6 线程应用程序的伸缩

1 什么是线程池管理
           指在多线程应用程序的初始化过程中创建线程的集合,

2 线程池设计
          2.1 无需创建线程,缩短了应用程序相应时间。
          2.2 在任务生存期内,不通过CLR回收线程资源。
          2.3 线程池根据系统当前运行的进程,优化线程时间片。
          2.4 允许启动多个线程,而不必为每个线程设置属性。
          2.5 可以将线程状态作为参数传递给当前执行任务。
          2.6 线程池线程数量,可以固定为一个默认最大值。

3 线程池概念
          3.1 当需要线程时,为新任务重用这些线程,而不是创建新线程;当任务完成时,线程就返回线程池等待下一次分派。
                线程池内线程的数量是可以固定也可不固定,根据内存大小安排和客户的请求而定。

          3.2 线程池管理中的问题(设计的实现)
               1 可以用线程池内的线程执行任务;当任务完成时将线程释放回池中,不能直接取消任务。
               2 生存期较短的任务可以使用线程池;又大又长的任务不可以使用线程池。
               3 线程池内线程的多少应该固定不变。
               4 线程池不适合对线程执行不同状态变换的操作。
               5 线程池不适合对线程进行优先级设定的操作。
               6 每个应用程序域,只能有一个线程池与其相关联。
               7 如果线程内的任务被锁定,则这个线程将不会在返回池内。可以通过编程技巧避免这种情况发生。

4 ThreadPool类
          解决的问题如下:
             1 处理任务项
             2 处理异步I/O
             3 System.Net套接字
             4 处理计时器
             5 代表其它线程等待 

 

5 线程同步的类库请参考如下链接:

            http://blog.youkuaiyun.com/jilm168/archive/2007/10/30/1857459.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值