ConcurrentQueueインスタンスとそれに同時にアクセスする2つのスレッドがあります。 1つのスレッドはアイテムをエンキューし続けます(100マイクロ秒で少数のアイテムをエンキューする可能性があります)。また、アイテムごとにTryDequeueスレッドを処理し、何らかの処理を行います。この場合、いずれかの項目のエンキュー後の処理スレッドをシグナリングするManualResetEvent(これは非常にこの問題に関連していない)ConcurrentQueueのエンキューとTryDequeue
があり、ConcurrentQueueに誤った順序でアイテムを追加することの可能性があります。スレッドセーフであることはわかっていますが、エンキュー時とデキュー時の項目の順序がかなり速くなるかどうかを確認したいだけです。
'アイテムエンキュー後に処理スレッドに信号を送るManualResetEventがあります' :( –
これはキューです!エントリを並べ替えることができれば、ConcurrentBingoMachine、ConcurrentLottery、ConcurrentShoppingTrolleyなどと呼ばれます。 –
A ConcrentBingoMachine:(( –