【问题标题】:Intel TBB parallel loop thread idIntel TBB 并行循环线程 ID
【发布时间】:2016-02-05 17:14:12
【问题描述】:

如何确定 TBB 并行循环体中的线程 ID?

基本上我需要的是一个对象的每个线程副本,所以我认为我应该在数组中拥有那些由线程 ID 索引的副本。

我正在寻找执行此操作的便携式 TBB 方式,而不是操作系统原生服务。

【问题讨论】:

  • 您可以创建这些对象并将它们显式传递给线程,无需通过 TID 查找。

标签: c++ multithreading intel tbb parallel-for


【解决方案1】:

您要查找的搜索词是“线程本地存储”。由于您已经在使用 TBB,您可能应该只使用它提供的设施:

https://www.threadingbuildingblocks.org/docs/help/reference/thread_local_storage.htm

【讨论】:

  • 太好了,谢谢! enumerable_thread_specific 是我想要的 btw tbb::this_tbb_thread::get_id() 如果 TLS 容器不可用,我会使用它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-06
相关资源
最近更新 更多