私は開発の設計段階にあり、C++ でマルチスレッドを使用していくつかの機能を実装することを検討しています。私はマルチスレッドの基本に精通していますが、他の人に私のアイデアを引き継がせたいと思っていました。私はまだマルチスレッド ライブラリを選択していません (Boost に傾いています) が、私の質問はおそらく選択したライブラリとは無関係です。
基本的に、while ループで (終了するまで) 実行し、別のソフトウェアによって取り込まれたコマンドのメッセージ キューをチェックするクラス (CommandGenerator と呼びましょう) を用意します。CommandGenerator がキューからメッセージを取得するたびに、バックグラウンドで実行され、キューから取り出されたばかりのデータを処理するスレッドを生成したいと考えています。その間、CommandGenerator の実行を継続し、再び while ループを回避して、新しいメッセージを取得し、再びスレッドを生成したいと考えています。これは概念的に可能ですか?コードがループし続けてキューをチェックしている間、スレッドを生成し続け、完了するまでバックグラウンドで実行させることはできますか? CommandGenerator がスレッドを制御する必要はありません。
どんな入力でも大歓迎です。