私はマルチスレッド プログラミングの初心者で、最も一般的な Producer-Consumer-Queue を知っているだけです。Boost C++ ライブラリを使用していますが、boost::lockfree::queue を使用するのがよいのか、それとも「mutex」と「condition_variable」を使用する std::queue のラッパー クラスを使用するのがよいのかわかりません。
ロックフリーのデータ構造を使用するのが良いのはどこで、「mutex」と「condition_variables」に基づく単純な実装を使用するのが良いのはどこですか?