调度任务队列示例

本主题提供如何调度任务队列的示例。 每个手动端口都需要调度任务队列。 端口的调度方式和时间决定了排队的回调的线程和并发行为。

std::thread dispatherThread = std::thread(
    [taskQueue]()
    {
        while (true)
        {
            bool processed = XTaskQueueDispatch(taskQueue,
                XTaskQueuePort::Completion, INFINITE);

            if (!processed)
            {
                // The task queue has been terminated, so return.
                break;
            }
        }
    });

此示例显示一个正在衍生的额外线程,用于持续调度已传入的任务队列的完成端口,直至其终止。

另请参阅

XTaskQueue 库概述

创建任务队列(示例)

清理任务队列(示例)

设计任务队列

XTaskQueue