複数のプロセス間でメモリを共有するために MemoryMappedFile を使用することを考えています。
1 つのプロセスが読み取りと書き込み (およびそれ以上) を行っている間、別のプロセスがメモリにアクセスしたくありません。
可能であれば、どのように実装できますか?
1 に答える
0
プロセス間同期を扱う場合、MutexやSemaphoreなどの同期オブジェクトを使用するのが一般的です。名前付きミューテックスはプロセス間で共有され、特に別のプロセスで実行されているマネージド コードとアンマネージド コードがある場合は、必要なものを提供できます。
ただし、より高い権限を持つプロセスによって作成されたミューテックスは、権限の低いプロセスからはアクセスできないことに注意してください。このようなことは、何らかの管理者権限を持つ Windows サービスでミューテックスを作成し、ネットワーク サービスとして起動された IIS Web アプリケーションからミューテックスにアクセスしようとすると発生する可能性があります。
于 2012-04-21T10:14:40.453 に答える