1,请问C#的线程池中的线程是前台线程还是后台线程啊,我查msdn,没发现可以设置的参数。如何是前台线程,它也和主线程抢占cpu么?
2,线程池对于处理一个单项任务,比如输出100个文件内容,这样用线程池来输出和用单线程来输出的时间是差不多呢,还是线程池快?我觉得线程池快,操作系统分配cpu时间片的单位是线程,这样线程池会比单线程分配cpu的几率更大,是这样吗?

解决方案 »

  1.   

    我认为线程池应该是协调运行环境的一种东西以PC说:
    比如100个线程,如果同时在I7同步启动,肯定效果还不错
    如果在I5上同步启动,可能就要打折扣
    如果在PIII上同步启动,可能比单线程循环执行还慢我认为线程池就是处理这个问题的,你可以根据目标环境用变量去决定每次最大同时启动多少个线程(其余的排队),不知道我的理解对否
      

  2.   

    “线程池”就是用来存放“线程”的对象池
    添加到CLR线程池的任务都会在合适的时候得以执行
    CLR线程池“总是会保留”的最少线程数量