0

私たちのプログラムでスレッドを使用して共有コレクションにアクセスしている場合、Mutex、Monitor、または Sempahore などでスレッドの安全性を確保する必要があります。

ただし、スレッドを使用していないがタスクを使用していて、複数のタスクが共通の共有コレクションにアクセスしようとしている場合、いくつかの方法で安全性を確保する必要がありますが、 ConcurrentDictionaryなどの既製のスレッドセーフ コレクションを使用する場合は、ロックとスレッドタスクの安全性を確保しますすでにフレームワーク レベルで処理されているため、必須ではありません。

したがって、基本的に、同時消費者環境で共有リソースを使用している場合、どのアプローチを使用できるかを知りたいです。

4

2 に答える 2

1

それらはすべて、さまざまな問題に対する優れたソリューションです。何をしようとしているのか、どのリソースが共有されているのか、どのような種類のアクセスが必要なのかを正確に教えていただければ、あなたのソリューションに最適なものを教えてくれます。

于 2012-09-04T08:35:45.577 に答える
0

全体として、非常に具体的なパフォーマンス要件がない限り、最も簡単なソリューションを使用してください。つまり、ConcurrentDictionary です。同期ロジックが組み込まれているため、誰も台無しにしないことはほぼ確実です。「手動」のタスクとスレッドの同期は、非常に難しい場合があります。

于 2012-09-04T08:35:41.997 に答える