プロセスで約 300 のブースト スレッドを作成しています。スレッド ID に基づいて特定のスレッドに参加する方法はありますか?
1 に答える
9
それはあなたがsをどのように救うかにかかっていますboost::thread
。それらをコンテナに保存する場合(をT = boost::thread*
使用)、次のようなものを簡単に使用できます
for(iterator it = ctn.begin(); it != ctn.end(); ++it){
if(it->get_id() == join_thread_id){
it->join();
break;
}
}
ただし、スレッドをどこかに保存new boost::thread
せず、ポインターを保存せずに使用するだけの場合、ブーストは自動ブックキーピング機能を提供しないため、それは不可能です。
boost::thread::id
1. 備考: を使用して ID を保存する必要があることに注意してください。
2. 備考:std::map<boost::thread::id,boost::thread*>
このようなタスクには便利かもしれません。
于 2012-12-19T12:07:11.870 に答える