Mr Jason

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2014年4月8日

摘要: //说明, 这段代码我用了很久, 我删除了自动调整规模的代码(因为他还不成熟)/******************************************************************* Thread Pool For Win32 * VC++ 6, BC++ 5.5(Free), GCC(Free)* Update : 2004.6.9 llBird wushaojian@21cn.comUse:1):void threadfunc(void *p){ //...} ThreadPool tp; for(i=0; i#include #include #i... 阅读全文
posted @ 2014-04-08 17:03 Mr Jason 阅读(299) 评论(0) 推荐(0)

摘要: 本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。1. 为什么需要线程池 目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但处理时间却相对较短。 传统多线程方案中我们采用的服务器模型则是一旦接受到请求之后,即创建一个新的线程,由该线程执行任务。任务执行完毕后... 阅读全文
posted @ 2014-04-08 16:57 Mr Jason 阅读(415) 评论(0) 推荐(0)

摘要: 1. 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?什么的系统应该选用多线程?我们首先必须回答这些问题。 使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操作方式。我们知道,在Linux系统下,启动一个新的 阅读全文
posted @ 2014-04-08 16:56 Mr Jason 阅读(440) 评论(0) 推荐(1)