关于线程池ThreadPool SetMaxThreads(int workerThreads, int completionPortThreads) 2个参数的区别 workerThreads:线程池中的最大工作线程数 completionPortThreads:线程池中异步 I/O 线程的最大数目
工作线程将用于活动工作,例如将工作项目发布到ThreadPool时,I/O完成线程用于等待异步I/O完成,例如等待数据在网络上接收。I/O完成线程不会花费太多时间来做这些事情,他们只会阻塞,直到他们收到信号。 ThreadPool中有两组线程的原因是因为他们所做的工作,由于I/O线程可能会阻塞较长时间,因此不太适合与活动工作队列共享这些线程,这一切都归结为优化线程数量到系统中可用的内核数量。
线程池, 工作线程, I/O线程, 异步I/O, 线程优化
线程池中的SetMaxThreads方法用于设置最大工作线程数和异步I/O线程数,分别处理活动工作和异步I/O操作,以优化系统资源利用。