私は Erlang のスレッド アーキテクチャ (小さくて安価なスレッドと「何も共有しない」アーキテクチャ) が大好きですが、Erlang は私のアプリケーションには完全には適していないようです (これらは C/C++ でよりパフォーマンスが向上しますが、Erlang はそうではありません)。その点で最高)。
すでに述べたように、私は (OS スレッドを使用していない) Erlang のスレッド アーキテクチャが本当に好きです。それで、私の質問は - C/C++ コードで使用するためにこのアーキテクチャを実装する同様のライブラリはありますか? 私がグーグルで調べた限りでは、Java の「グリーン スレッド」(ずっと前に廃止され、現在のバージョンから削除された) と D の「ファイバー」(1 つの「実際の」スレッドに制限されているが、Erlang はスレッドは、Erlang によって最も適切な「実際の」スレッドで実行されます)。これは多少似ていますが、Erlang スレッドほど強力ではありません。
そのようなライブラリがない場合は、必要なコードのチャンクを C/C++ で記述するためにerl_nifインターフェイスを使用することを検討しています。しかし、パフォーマンス分析をどこにも見つけることができませんでした - erl_nif は高速ですか、それとも Erlang 用語/データ型を C/C++ 型に「変換」するオーバーヘッドは本当に大きいですか?
ありがとう!