如何:创建线程池任务队列
示例
下面的示例显示的是怎样创建一个任务队列,该队列在系统线程池上调度工作回调和完成回调。
void CreatingTaskQueue()
{
XTaskQueueHandle queue;
HRESULT hr = XTaskQueueCreate(
XTaskQueueDispatchMode::ThreadPool,
XTaskQueueDispatchMode::ThreadPool,
&queue);
if (FAILED(hr))
{
printf("Creating queue failed: 0x%x\r\n", hr);
return;
}
SubmitCallbacks(queue);
// Wait a while for the callbacks to run.
Sleep(1000);
XTaskQueueTerminate(queue, true, nullptr, nullptr);
}
示例输出
Worker invoked on thread 11440. Cancel? 0.
Completion invoked on thread 11440. Cancel? 0.