06 | 线程池基础:如何用线程池设计出更“优美”的代码?
胡光
线程池在工作非常有用,但你了解线程池吗?要了解线程池,必须要了解什么是线程和进程,以及其中与编程范式相关的思维模式。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该试读文章来自《常用算法 25 讲》,如需阅读全部文章,
请先通过赠一得一解锁课程
请先通过赠一得一解锁课程
赠一得一
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(8)
- 最新
- 精选
- 不知火课后思考题,我的想法是 先筛出1万以内的素数 然后把1万-1亿的数分为n分,用线程池初始化n份数组 然后初始化任务结束后告知主线程,主线程用1万以内的素数去筛这些数 最后累加各个区间的素数个数
作者回复: yes~~~~~d(^_^o)
213 - 我来也由于线程是共享了cpu的计算资源,所以线程也不是越多越好,否则会有频繁切换导致的软中断过高的问题。 课后思考题 如何不用各种奇技淫巧,只是傻算的话,想到两种搞法。 1。分段来做, 但是当数比较小时,判断是否是素数比较快。 所以不能简单的分成cpu的核数。 可以分成N*CPU核数。 然后一份一份的算。 2。筛子算法 好像是golang介绍协程时这么搞过。 多个协程互相合作。 可以转成类似的线程来做。
作者回复: d(^_^o)
6 - Geek_c37e49多个线程并行计算,每个线程计算其中一部分,最后合并,由线程池管理这些线程9
- bill终于理解了进程是资源分配的最基本单元,但线程为什么就是调度的最基本单元,因为一个线程对应了一个CPU时间片归属地:广东
- 速水御舟这次彻底知道了为什么要用线程池的根本原因了 感谢
- Jeffery_Yu文章写的很好懂呀,很棒!
- A_阿海学习了。温故知新
- 月“线程是操作系统进行计算调度的最基本单元,进程是操作系统进行资源分配的最基本单元。”线程的数量要合理,不要追求多,CPU资源有线,过多的线程会导致CPU频道的切换。
收起评论