linux 并行 线程选多少合适

linux 并行 线程选多少合适,第1张

具体问题具体分析,如果你主要是做纯计算(比如数学运算,物理计算等),那么线程数应该等于cpu核心数。如果主要是io *** 作(即需要访问硬件外设),一般来说线程数的提升并不能提高运行速度。 如果是 计算 + IO, 一般来说线程数应该大于cpu核心数。

总的来说,除了第一种,后两种情况都应该实际测试看效果。

pthread_join 就是要等待线程退出的。

以上程序的功能是运行一个线程(fun1),然后等待它结束,再运行另一个线程(fun2),继续等待它退出,同时运行的线程最多两个(初始线程和两个fun中的一个)。

同时运行fun1和fun2,只需要把 pthead_join(tid1, &ret)移到第二个pthread_create后面就可以了。结果是运行fun1线程,然后运行fun2线程,再等待两个线程退出(线程里是死循环,永远等不到退出)。

注意看 pthread_join 的作用,Linux的手册页有详细描述。可以直接把线程设为detached,在线程里调pthread_exit。这样线程结束后,相关资源自动被释放,不用管该什么时候调用 pthread_join。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7283952.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存