怪事,关于不同的线程设定不同的cpu的问题

yunan 2019-06-17 05:34:37
我生成了一个TIMAGE的子类,类中定义了TThread,在新线程的构造函数里,用duplicatehandle得到了该线程的handle,实测每个新生成的类,这个线程handle是不同的。然后用setthreadaffinitymask来设置该线程使用哪个cpu。结果发现,所有线程都是用的最新生成的线程定义的那个cpu。


结果就是本来我想不同的对象能使用不同的cpu运行,但实际情况时,所有的对象都把线程运行在最新的对象的线程定义的那个cpu上,当你在运行时,可以看到有一个cpu被占满了,这时生成一个新对象,就变成下一个cpu被占满。

环境是c++builder6.0
...全文
65 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhgwbzhd 2019-06-17
  • 打赏
  • 举报
回复
大意看明白了,具体的没有实现过,不过在这里注意点不是在多线程上,而是多核上。
ooolinux 2019-06-17
  • 打赏
  • 举报
回复
不懂,帮顶,交给win系统自动分配不可以麽?

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧