1

Microsoft RPC は、関数呼び出しの方法で実行できる IPC メカニズムを提供します。これは、私のメイン サービスがタスクを子プロセスに委任するプロジェクトにとって非常に役立ち、子プロセスの関数はメイン サービスに実装されているかのように呼び出すことができます。これにより、名前付きパイプ、ソケット、protobuf などの他の IPC メカニズムを使用するときに、抽象データをシリアル化し、カスタム プロトコルを定義する必要がなくなります。RPC がそれらを内部的に使用することは承知しています。

Mac OS X 用の COM の実装に関する記事を読みましたが、これはおそらく私が必要としているものに最も近いものです。必要なタイプの IPC を実装する方法が他に見つからない場合は、おそらく COM を使用するつもりですが、何も欠けていないことを確認したいと思いました。

4

1 に答える 1

2

「XPC サービス」をご覧ください。ドキュメントから:

XPC サービスは launchd によって管理され、単一のアプリケーションにサービスを提供します。これらは通常、アプリケーションを小さな部分に分割するために使用されます。これは、プロセスがクラッシュした場合の影響を制限することで信頼性を向上させ、プロセスが侵害された場合の影響を制限することでセキュリティを向上させるために使用できます。

そして、そのガイドの後半:

このNSXPCConnectionAPI は、リモート プロシージャ コール メカニズムを提供する Objective-C ベースの API であり、クライアント アプリケーションがプロキシ オブジェクトのメソッドを呼び出して、それらの呼び出しをサービス ヘルパー内の対応するオブジェクトに透過的に中継したり、その逆を行うことができます。

于 2013-11-08T21:45:41.970 に答える