プロセス内に約300個の追加スレッドを作成しています。 スレッドIDに基づいて特定のスレッドに参加する方法はありますか?特定の追加スレッドに参加する
答えて
天国はあなたがどのようにboost::thread
を保存するかによって異なります。あなたは(T = boost::thread*
付き)の容器に保存した場合、あなたがどこかのスレッドを保存し、ちょうどブーストdoesnのため、それは不可能ですポインタを保存せずにnew boost::thread
を使用しない場合、あなたは単に、しかし
for(iterator it = ctn.begin(); it != ctn.end(); ++it){
if(it->get_id() == join_thread_id){
it->join();
break;
}
}
のようなものを使用することができます自動的な簿記機能を提供しません。
1.備考:idを保存するには、boost::thread::id
を使用する必要があります。
2.備考:std::map<boost::thread::id,boost::thread*>
がこのようなタスクに便利です。
または 'find_if(begin(ctn)、end(ctn)、[join_thread_id](iterator it){return it-> get_id()== join_thread_id;}); ' –
スレッドがたくさんある場合、マップは良くありませんか?私はパフォーマンスを念頭に置いてこれを求めています。 –
@ AdriC.S .:「たくさんの」の意味に依存します。引数の数(サブリニアルックアップの複雑さ)に応じてマップのサイズが変わりますが、実際の項目数によっては小さなベクトルが小さなマップよりも優れている可能性があります。 –
- 1. スレッド:参加は()
- 2. VS 2017で特定のバージョンのプロジェクト参照を追加する
- 3. NuGetパッケージから特定の参照を追加する
- 4. Javaスレッド参加メソッド
- 5. C++ - スレッドのベクトルに参加する
- 6. RDD内の特定の行に参加
- 7. グループに参加キーを追加する
- 8. 特定のインデックスの文字列に追加または追加
- 9. firebaseデータベースの特定の使用参照にデータを追加するには?
- 10. 追加の参照を自動的に追加する
- 11. 追加条件で追加/参加する
- 12. 特定のインデックスでリストに追加
- 13. イベントリスナーを特定のアクティビティに追加
- 14. IOSスタックビューaddArrangedSubview特定のインデックスに追加
- 15. Rails:参加時に特定のレコードに制限する
- 16. 「Web参照の追加」経由でのWCF参照の追加
- 17. 参照の追加
- 18. Visual Studioで特定のバージョンのバージョンのアセンブリへの参照を追加する
- 19. wcfサービス参照設定の追加
- 20. サービス参照プロジェクト参照の追加時の追加
- 21. スレッドを使用する - コレクションに追加
- 22. 数独チェッカーにスレッドを追加する
- 23. Mavenプラグインに特定の設定を追加するには
- 24. 特定のクラスのdivへの追加
- 25. データフレームの特定の値を行列の特定の位置に追加する
- 26. HTML5 appcache追加/削除、特定のファイル
- 27. Gurobi Python - 特定のvarsを追加
- 28. Javascriptの特定のタグにスタイル(フォントサイズ)を追加するには
- 29. チタンの特定のインデックスに行を追加するには
- 30. DataTableの特定の列にArraylistを追加するには?
どのようにこれらのスレッドを管理していますか? (あなたはどういうわけか、スレッドを覚えていますか?) –