スレッドビルディングブロック(TBB)では、同じスコープ内で2つのタスクスケジューラを初期化すると、最初の初期化の引数が遅延されない限り、2番目の初期化の引数は無視されます。競合を避けるために、タスクスケジューラが自分のプログラムの初期に初期化されているかどうかを調べたいと思います。それを行う方法はありますか?もしそうなら、それに対する議論は何でしたか?TBBには、既存のタスクスケジューラがあるかどうかを調べる方法はありますか?
0
A
答えて
2
tbb::this_task_arena::current_thread_index()
とtbb::this_task_arena::max_concurrency()
の機能を考慮するとよいでしょう。
tbb::this_task_arena::current_thread_index()
関数は、スレッドがまだタスクスケジューラを初期化していない場合は "tbb::task_arena::not_initialized
"を返します。 (documentation link)。
タスクスケジューラが既に初期化されている場合は、tbb::this_task_arena::max_concurrency()
機能を使用して、要求されたスレッド数を取得できます。ただし、以前のタスクスケジューラの初期化中に使用されたスタックサイズを取得することはできません。
関連する問題
- 1. ポイントが正方形内にあるかどうかをJavaで調べる方法はありますか?
- 2. ファイルが存在するかどうかを調べる簡単な方法はありますか?
- 3. 関数がPythonで再帰的であるかどうかを調べる方法はありますか?
- 4. boost :: adjacency_listが空であるかどうかを調べる簡単な方法はありますか?
- 5. stdinが空であるかどうかを調べる方法
- 6. キーがローカルストレージに既に存在するかどうかを調べるには?
- 7. divにスクロールバーがあるかどうかを調べるには
- 8. 配列がスタックにあるかどうかを調べる方法は?
- 9. シートが空であるかどうかを調べるには?
- 10. 型パラメーターが型のサブタイプであるかどうかを調べる方法は?
- 11. ビューコントローラがナビゲーションスタックからポップされているかどうかを調べる方法はありますか?
- 12. Javaでアプリケーションサーバー名を調べる方法はありますか
- 13. 配列要素が空であるかどうかを調べる方法は?
- 14. TrueTypeフォントがイタリック体であるかどうかを調べる方法は?
- 15. matlabで行列が空であるかどうかを調べる方法は?
- 16. JCRプロパティが複数値であるかどうかを調べる方法は?
- 17. ファイルがシンボリックリンクかどうかを調べるためのfstat()のPOSIXの方法はありますか?
- 18. ゴルーチンがブロックされているかどうかをランタイムチェックで調べる方法はありますか?
- 19. VBScript関数が定義されているかどうかを調べる方法はありますか?
- 20. スレッドがブロックされているかどうかを調べる方法はありますか?
- 21. ブーストグラフに頂点が存在するかどうかを調べる方法は?
- 22. チキンスキームに変数が存在するかどうかを調べる方法は?
- 23. 関数が値を返すかどうかを調べる方法はありますか?
- 24. pythonに属性があるかどうかを調べる代替手段はありますか?
- 25. ソフトウェアキーボードが表示されているかどうか調べる方法はありますか?
- 26. 同じ変数を持つセッションが既にlaravelにあるかどうかを調べる方法
- 27. SQLAlchemy:オブジェクトが既にテーブルに存在するかどうかを調べる
- 28. 部屋番号がデータベースにあるかどうかを調べる方法
- 29. フィルタがC#GlobalFilterにあるかどうかを調べる方法
- 30. 注釈がMKPolygonView(iOS)内にあるかどうかを調べる方法