現在の設定:ローカルCOMインターフェイスのC++ IPC置換え?
Windows C++ネイティブアプリケーションは、多くのプラグイン実行可能ファイルによって使用される(RPCスタイル、単純な関数呼び出し)COMインターフェイスを提供します。通信はローカルマシン上でのみ行われます。
[App.exe (COM server)] <-> [plugin1.exe (COM client/possible callbacks etc.)]
<-> [plugin2.exe (COM client)]
ここで、COMインターフェイスを選択したプラグインに置き換えることにします。
COMと同様に使いやすいローカルの「RPCスタイル」IPCにはどのようなオプションがありますか?
次の制限が適用されます
- パフォーマンスは、ローカルCOM呼び出しと少なくとも同程度に良好でなければなりません。 (Steve's answerを照らして、ローカルのアウトオブプロセスCOMコールよりも大幅に悪い結果を出さない代替手段はすでに役に立ちます!)
- インターフェイスは使いやすいものにする必要があります。クライアントまたはサーバーでインターフェイスを使用している間、明示的にメモリと未処理のソケットを使用することはありません。インプロセスCOMの呼び出しは、呼び出し元のスレッド上の簡単な関数呼び出しに減らすため、Windows上で
- ネイティブC++は、プロセス間の
あなたは何を持っているのですか?この質問に対する答えは、よりよい解決策を明らかにするかもしれません。 –
@ジョン:「なぜ」は空白のままで、手元にある質問に答えた人たちに焦点を当てる。 –