none
关于Thread和Threadpool以及异步调用之间的关系 RRS feed

  • 问题

  • 假如说我限制了threadpool最大执行线程数量是3,然后我又创建十个thread,并且全部调用start方法,请问这样是否会受threadpool的限制,异步调用是否又会受threadpool设置的限制呢?谢谢大家
    2011年3月15日 13:14

答案

  • 假如说我限制了threadpool最大执行线程数量是3,然后我又创建十个thread,并且全部调用start方法,请问这样是否会受threadpool的限制,异步调用是否又会受threadpool设置的限制呢?谢谢大家


    你自己建立的 thread 和thread pool 管理的thread 是无关的

     

    threadpool 里面的线程 除了显示调用外   也为 mutlicastdelegate.begininvoke     和io的beginSend/Receve 等操作提供服务

    .net 4  PLinq 用的也是线程池。

     

    此外的调用都与线程池没什么关系


    入了ipad,最近用ipad上论坛
    • 已标记为答案 lypython 2011年3月16日 10:41
    2011年3月16日 1:42
    版主

全部回复

  • 线程池维护1个至n个线程,操作系统从请求队列中提取请求分配个线程池中的适合线程处理。

    当线程池满时,多余的线程会在队列里排队,当线程池空闲时,系统自动调入排队的线程,以保持系统利用率。

    参照:http://www.cnblogs.com/sashow/archive/2007/02/08/644679.html


    http://blog.csdn.net/zx13525079024
    2011年3月16日 0:27
  • 假如说我限制了threadpool最大执行线程数量是3,然后我又创建十个thread,并且全部调用start方法,请问这样是否会受threadpool的限制,异步调用是否又会受threadpool设置的限制呢?谢谢大家


    你自己建立的 thread 和thread pool 管理的thread 是无关的

     

    threadpool 里面的线程 除了显示调用外   也为 mutlicastdelegate.begininvoke     和io的beginSend/Receve 等操作提供服务

    .net 4  PLinq 用的也是线程池。

     

    此外的调用都与线程池没什么关系


    入了ipad,最近用ipad上论坛
    • 已标记为答案 lypython 2011年3月16日 10:41
    2011年3月16日 1:42
    版主