关于多线程cpu的分配问题

binbinqin 2011-05-29 12:05:15
自己开发的多线程程序,没有用并行的函数库,而是直接用win32的线程函数,
在多核计算机上运行,线程会自动分配的不同的核上吗?
如果不能,还需要做哪些工作?
...全文
208 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
心灵彩虹 2011-05-30
  • 打赏
  • 举报
回复
Thread.CurrentThread.ManagedThreadId.
Thread.CurrentThread 是调用此属性的函数所在的线程http://code.msdn.microsoft.com/ParExtSamples
zhoujk 2011-05-30
  • 打赏
  • 举报
回复
我在.net 上面实现过,没有问题,方法是通过.net函数返回当前可用的内核数量a,然后开 a 或 a-1 个线程,就能够在不同的核上运行。做 a-1 的目的是为用户保留一个核
Dead_Cicle 2011-05-29
  • 打赏
  • 举报
回复
多核的cpu跟单核在处理多线程问题上确实有所区别。

在我们做yeild()方法测试中,单核会暂停,转让cpu使用权,但是双核不会。

至于是否自动分配到不同核上,照上面的测试的话,是自动分配了。


---------------线程是个比较复杂的问题。

566

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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