如何通过CreateThreadPool高效构建线程池?
- 内容介绍
- 文章标签
- 相关推荐
本文共计562个文字,预计阅读时间需要3分钟。
使用Windows API函数创建线程池,极大地便利了自己编写线程池的繁琐步骤。使用CreateThreadPool创建线程池后,需要在创建完成后初始化线程池的状态,并在不需要时清理。
使用Windows API函数来创建线程池,可以极大的方便了自己编写线程池的繁琐步骤。
使用CreateThreadPool来创建一个线程池,需要在创建完成后,初始化线程池的状态,并且在不需要的时候清理线程池所占用的资源。
相关代码:
auto m_ptp_pool = CreateThreadpool(NULL); // 创建线程池 SetThreadpoolThreadMaximum(m_ptp_pool, 12); SetThreadpoolThreadMinimum(m_ptp_pool, 1); InitializeThreadpoolEnvironment(&m_tp_callback_environ);
以上代码第一行表示,1.我们创建一个线程池,2.设置线程池的最大个数,3.设置线程池的最小个数,4.设置线程池的环境资源对象
在满足以上条件后我们就可以将我们的任务添加到线程池中进行运行。线程池的函数要求必须是一个全局变量。
本文共计562个文字,预计阅读时间需要3分钟。
使用Windows API函数创建线程池,极大地便利了自己编写线程池的繁琐步骤。使用CreateThreadPool创建线程池后,需要在创建完成后初始化线程池的状态,并在不需要时清理。
使用Windows API函数来创建线程池,可以极大的方便了自己编写线程池的繁琐步骤。
使用CreateThreadPool来创建一个线程池,需要在创建完成后,初始化线程池的状态,并且在不需要的时候清理线程池所占用的资源。
相关代码:
auto m_ptp_pool = CreateThreadpool(NULL); // 创建线程池 SetThreadpoolThreadMaximum(m_ptp_pool, 12); SetThreadpoolThreadMinimum(m_ptp_pool, 1); InitializeThreadpoolEnvironment(&m_tp_callback_environ);
以上代码第一行表示,1.我们创建一个线程池,2.设置线程池的最大个数,3.设置线程池的最小个数,4.设置线程池的环境资源对象
在满足以上条件后我们就可以将我们的任务添加到线程池中进行运行。线程池的函数要求必须是一个全局变量。

