码迷,mamicode.com
首页 > 编程语言 > 详细

线程池原理(转载)

时间:2015-10-06 06:57:11      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

      “ 线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下:先启动若干数量的线程,并让这些线程都处于睡眠状态,当客户端有一个新请求时,就会唤醒线程池中的某一个睡眠线程,让它来处理客户端的这个请求,当处理完这个请求后,线程又处于睡眠状态。

       可能你也许会问:为什么要搞得这么麻烦,如果每当客户端有新的请求时,我就创建一个新的线程不就完了?这也许是个不错的方法,因为它能使得你编写代码相对容易一些,但你却忽略了一个重要的问题——性能!就拿我所在的单位来说,我的单位是一个省级数据大集中的银行网络中心,高峰期每秒的客户端请求并发数超过100,如果为每个客户端请求创建一个新线程的话,那耗费的CPU时间和内存将是惊人的,如果采用一个拥有200个线程的线程池,那将会节约大量的的系统资源,使得更多的CPU时间和内存用来处理实际的商业应用,而不是频繁的线程创建与销毁。”

       以上内容摘自:http://www.cnblogs.com/zping/archive/2008/10/29/1322440.html

      内存池是为了解决实时创建线程时服务器CPU和内存占用量急剧上升的压力而产生的,相当于一个预处理过程,预先创建一个线程池,线程池里的线程均处于睡眠状态,知道有一个连接发起,唤醒其中一个去解决问题,解决完毕后又继续睡眠。

线程池原理(转载)

标签:

原文地址:http://www.cnblogs.com/XiaoHDeBlog/p/4856618.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!