プロセスはメモリを共有せず、プロセス間の通信メカニズムを必要とします。これには、さまざまなメカニズムのいずれかを使用できます。
- ファイルまたはデータ - 1 つのプロセスがファイルまたは DB に書き込み、もう 1 つのプロセスがデータまたはファイルの内容に基づいてメソッドを読み取り、実行します。
- サービス ホスト/クライアント - WCF、.NET リモーティング、名前付きパイプ、または直接の TCP/IP 通信メカニズムを使用して、1 つのプロセスがサービス インターフェイスの実装をホストし、呼び出しプロセス (クライアント) がサービス インターフェイスのプロキシを使用して呼び出しをシリアル化し、通信します。ホスト プロセスへ - ステートフルなリクエスト/レスポンス インタラクションが必要な場合は、これが最適な方法です。
- メッセージ キュー - MSMQ のようなメッセージ キューを使用します。この場合、1 つのプロセスがメッセージをキューに送信し、もう 1 つのプロセスがメッセージを取得してメソッドを実行します。
他にもあると思いますが、これらは最も一般的な3つの方法です。
私のお気に入りは、軽量のサービス ホスト/クライアント シナリオです。これを簡単にするための軽量ユーティリティがいくつかあります。RemotingLiteまたはDuoVia.Netと呼ばれる名前付きパイプをサポートする RemotingLite の独自の拡張機能を使用できます。