golang线程池原理
发表时间:2024-07-28 12:41:38
来源:网友投稿
golang线程池属于对象池.所有对象池都具有一个非常重要的共性,就是为了最大程度复用对象.那么线程池的最
重要的特征也就是最大程度利用线程.
首先创建线程本身需要额外(相对于执行任务而必须的资源)的开销.
作业系统在每创建一个线程时,至少需要创建以下资源:
(1) 线程内核对象:用于对线程上下文的管理.
(2) 用户模式执行栈.
(3) 内核模式执行栈.
这些资源被线程占有后作业系统和用户都无法使用.
相反的过程,销毁线程需要回收资源,也需要一定开销.
其次过多的线程将导致过度的切换.线程切换带来的性能更是不可估量.系统完成线程切换要经过以下过程:
(1) 从用户模式切换到内核模式.
(2) 将cpu寄存器的值保存到当前线程的内核对象中.
(3)打开一个自旋锁,根据调度策略决定下一个要执行的线程.释放自旋锁,如果要执行的线程不是同一进
程中的线程,还需要切换虚拟内存等进程环境.
(4) 将要执行的线程的内核对象的值写到cpu寄存器中.
(5) 切换到用户模式执行新线程的执行逻辑.
所以线程池的目的就是为了减少创建和切换线程的额外开销,利用已经的线程多次循环执行多个任务从而提
高系统的处理能力.
免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。
如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!
相关资讯
汽修专业新疆怎么找工作
2025-04-06
机械专业专长怎么写简历
2025-04-06
专科怎么报审计专业的
2025-04-06
专业学科导师类别怎么填
2025-04-06
查报考专业网站怎么查
2025-04-06
水电专业规划怎么写简历
2025-04-06
表演专业怎么留学的好呢
2025-04-06
专业防雷检测怎么收费的
2025-04-06
怎么查询同等学力专业
2025-04-06
高考技能专业怎么选择的
2025-04-06
钢筋套筒专业名称怎么写
2025-04-06
中专怎么填高考志愿专业
2025-04-06
中专统招怎么报志愿专业
2025-04-06
师范专业自我评价怎么写
2025-04-06
景观建筑换专业怎么换好
2025-04-06
建筑专业学生简历怎么写
2025-04-06
推荐资讯
如果想报考美国的大学,只有ib成绩的话还需要sat和托福的成绩吗?
2022-08-09 02:04:50
广州市区是哪个区 广州哪个区最好
2024-05-10 12:24:40
烤箱做菠萝豆的做法
2023-11-03 10:26:47
《空城计》的主要内容概括是什么
2024-07-13 16:11:22
国内外的美术教育有什么差别,你更喜欢哪个
2024-07-25 18:28:48
审计专业主要学什么
2024-08-17 20:51:53
云南工贸职业技术学院招生办联系方式
2024-10-17 13:09:07
福州民办专科哪个好
2024-10-23 13:21:48
财务管理的主要内容包括哪些
2024-11-09 06:32:22
古人登楼远眺的诗
2024-11-16 16:02:28
新励学网教育平台
海量全面 · 详细解读 · 快捷可靠
累积科普文章数:18,862,126篇
热门关注