社区
英特尔边缘计算技术
帖子详情
线程创建成本
vangork
2009-04-27 01:03:26
每条线程是否分配有足够的工作来证明线程创建成本并没有浪费?
这句话怎么去理解,创建成本是否浪费怎么去评估呢???
...全文
198
5
打赏
收藏
线程创建成本
每条线程是否分配有足够的工作来证明线程创建成本并没有浪费? 这句话怎么去理解,创建成本是否浪费怎么去评估呢???
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vangork
2009-05-12
打赏
举报
回复
关键就是如何去评估线程的创建是否浪费了,怎么合理的去度量线程的创建成本和实际带来的好处呢???(我现在评价的指标只有程序运行时间阿)还有一个问题是怎么去合理的创建最优的线程个数?(如何能从理论上确定分配多少线程能达到最优化的效果)
tianfang
2009-05-01
打赏
举报
回复
线程的创建和销毁是销毁CPU、内存资源的,如果你面临大量的线程处理,线程的创建、销毁销毁的资源可能就要超过线程功能实现的时间,例如教科书上多线程的例子,线程的功能只是对一个数值进行加减,这种情况,线程的创建、销毁已经远远大于线程的运行的开销。
看看线程池,它的目标就是减少这个问题,线程先创建好,用的时候,从线程池中选择一个激活,将参数传递,线程处理完成,再让线程在线程池中休眠。就减少了线程的创建和销毁
microcloud
2009-04-29
打赏
举报
回复
从并行计算的角度讲, 创建线程是为了完成更多的计算任务。
如果你创建了很多线程,但程序本身并没有很高的并行度,或者说并没有足够多的计算资源可用(比如说,你在一个四核的处理器上创建十个线程,但最多只能同时有四个线程占用CPU资源),这时有些线程就是浪费的(因为创建/销毁线程也有一定的开销)。
猫已经找不回了
2009-04-27
打赏
举报
回复
[Quote=引用楼主 vangork 的帖子:]
每条线程是否分配有足够的工作来证明线程创建成本并没有浪费?
这句话怎么去理解,创建成本是否浪费怎么去评估呢???
[/Quote]
创建一个新线程,除了要从进程里分走一部分堆栈外,还需要额外的一点内存来维护它。
但是好处也是明显的,多线程没有多进程那么浪费,而多线程则有重入的问题。
具体就要见仁见智了。
intel_iclifort
2009-04-27
打赏
举报
回复
线程的创建和销毁本身也需要消耗一定的系统资源, 也就是花费相应的执行时间.
如果每个线程实际的工作时间比较短(也可以理解为工作量较小), 那么可能这样的多线程化不一定有意义. 也就是说未必8个线程一定比2/4个线程的效果好.
记得以前曾经看到过有帖子质疑OpenMP或者多线程化的效果, 其实可能就是它带来的好处不明显, 甚至有副作用
28个java常用的工具类源码
`Collections.sort()`可对列表进行排序,而`Collections.synchronizedXXX()`方法用于
创建
线程
安全的集合。 3. **`java.lang.StringBuilder`/`StringBuffer`**:在字符串拼接场景中,这两个类比直接使用`+`操作符更...
两种
线程
创建
方式的区别
创建
一个新的
线程
有两种方式,第一种方式为通过继承Thread类,并实现Thread类中的run()方法。第二种
创建
线程
的方式是通过实现Runnable接口来
创建
一个新的
线程
。 下面总结一下两种
创建
线程
方式的区别: 从面向对象...
iOS多
线程
开发(二)--
线程
管理
线程
管理 ...一,
线程
创建
成本
1,为辅助
线程
分配的堆栈空间大小,便于系统和进程管理,以及为函数参数和局部变量分配空间 A,内核数据结构(kernel data structures)---大约1KB,This memory i
QT——C++ 多
线程
05
QThreadPool管理和重新设计单个QThread对象,以帮助减少使用
线程
的程序中的
线程
创建
成本
。在更改
线程
关联之前,QEvent::ThreadChange事件被发送到此对象。请注意,任何发布到此对象的新事件都将在targetThread中...
Qt QThreadPool
线程
池
QThreadPool管理和重新设计单个QThread对象,以帮助降低使用
线程
的程序中的
线程
创建
成本
。每个Qt应用程序都有一个全局QThreadPool对象,可以通过调用globalInstance来访问该对象。要使用其中一个QThreadPool
线程
,请...
英特尔边缘计算技术
567
社区成员
7,024
社区内容
发帖
与我相关
我的任务
英特尔边缘计算技术
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
复制链接
扫一扫
分享
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章