4

完全に待機がなく、同時に複数のライターとリーダーをサポートできる同時キューを実装することは可能ですか?ミューテックスまたは既存のライブラリを使用できることはわかっていますが、自分で実装したいのですが、何かアイデアはありますか?

4

1 に答える 1

9

ここで複数のエンキュー者とデキュー者の待機なしのキューを見つけることができますが、@David Schwartz が言ったように、これは待機なしであるためだけに必ずしも高速になるとは限りません。 これは、ウェイトフリー キューに関する別の論文です。これらの論文の参考文献では、配列に基づく他の提案されたキューも見つけることができます。つまり、容量は限られていますが、リストに基づくキューよりも高速です。

実用的な解決策を探している場合は、Michael と Scott の Lock-Free キューがおそらく良い代替手段です。

詳細を知り、自分で試してみたい場合は、ここで可能な代替案の良い履歴書を見つけることができ、いくつかのコード例があります.

于 2013-07-14T13:07:17.530 に答える