のようなものを持ちたいのですtbb::task_group
が、注文の実行が保証されているという違いがあります。
serial_task_group tasks;
tasks.run([]{std::cout << 1;});
tasks.run([]{std::cout << 2;});
tasks.run([]{std::cout << 3;});
tasks.wait();
// guaranteed output: 123
tbb を使用してこれを達成する方法について何か提案はありますか?
現在、条件変数を使用してキューから実行する明示的なスレッドがあります。ただし、キューを使用する際の問題は、task_group でアクティブなタスクが 1 つだけであることを保証する方法です。