> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 分派工作佇列範例

> 示範如何產生專用執行緒，在迴圈中對完成連接埠呼叫 XTaskQueueDispatch，讓回呼持續執行直到工作佇列終止。

本主題提供如何分派工作佇列的範例。每個[手動](https://docs.xbox.com/zh-TW/reference/system/xtaskqueue/enums/xtaskqueuedispatchmode.md)連接埠都必須分派工作佇列。連接埠
[分派](https://docs.xbox.com/zh-TW/reference/system/xtaskqueue/functions/xtaskqueuedispatch.md)的方式和時機，決定了已加入佇列之回呼的執行緒和
並行行為。

```c++ theme={null}
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;
            }
        }
    });
```

此範例示範產生一個額外的執行緒，持續分派
傳入之工作佇列的完成連接埠，直到該佇列
終止為止。

## 參考 API 文件

* [XTaskQueue (API 內容)](https://docs.xbox.com/zh-TW/reference/system/xtaskqueue/xtaskqueue_members.md)
  * 函式
    * [xtaskqueuedispatch](https://docs.xbox.com/zh-TW/reference/system/xtaskqueue/functions/xtaskqueuedispatch.md)

## 另請參閱

[XTaskQueue 程式庫概觀](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue.md)

[建立工作佇列 (範例)](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-create-task-queue.md)

[清除工作佇列 (範例)](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-cleanup-task-queue.md)

[設計工作佇列](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-task-queue-design.md)

[XTaskQueue](https://docs.xbox.com/zh-TW/reference/system/xtaskqueue/xtaskqueue_members.md)


## Related topics

- [用於非同步工作程式設計的 XAsync 程式庫](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/index.md)
- [清除工作佇列範例](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-cleanup-task-queue.md)
- [建立工作佇列範例](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-create-task-queue.md)
- [操作說明：建立執行緒集區工作佇列](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-task-queue-design-howto/creating-thread-pool-task-queue.md)
- [XTaskQueue 程式庫概觀](https://docs.xbox.com/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue.md)
