Skip to main content

XTaskQueueCreate

호출을 큐에 넣고 디스패치하는 데 사용할 수 있는 작업 큐를 만듭니다.

구문

매개 변수

workDispatchMode   _In_
형식: XTaskQueueDispatchMode
큐의 “work” 포트에 대한 디스패치 모드입니다. completionDispatchMode   _In_
형식: XTaskQueueDispatchMode
큐의 “completion” 포트에 대한 디스패치 모드입니다. queue   _Out_
형식: XTaskQueueHandle*
새로 만든 큐입니다.

반환 값

형식: HRESULT HRESULT 성공 또는 오류 코드입니다.

설명

이 함수는 시간에 민감한 스레드에서 호출하기에 안전하지 않습니다. 자세한 내용은 시간에 민감한 스레드를 참조하세요.
작업 큐는 참조 횟수가 계산되는 개체입니다. 참조를 해제하려면 XTaskQueueCloseHandle을 호출합니다. 작업 큐에는 작업 포트와 완료 포트가 있으며 두 포트 중 어느 쪽에도 작업을 큐에 넣을 수 있습니다. 각 포트는 고유한 디스패치 모드로 구성할 수 있습니다. 대부분의 시나리오에서는 XTaskQueueCreate API를 사용하여 작업 큐를 만듭니다. 그러나 여러 비동기 호출을 체이닝하는 경우에는 XTaskQueueCreateComposite를 통해 복합 큐를 만드는 것이 유용할 때가 있습니다. 구현에서 작업 큐를 사용하는 다른 API를 호출해야 하는 API를 고려해 보세요. API의 완료 콜백을 리디렉션하여 호출자의 완료 스레드를 묶지 않도록 할 수 있습니다. 이 경우 다른 큐의 작업 포트에서 작업 및 완료 포트가 빌드된 복합 작업 큐를 만들 수 있습니다. 다음 예제에서는 시스템 스레드 풀에서 작업 및 완료 콜백을 모두 디스패치하는 작업 큐를 만듭니다.
SubmitCallbackXTaskQueueSubmitCallback 함수에 대한 코드 예제에서 정의된 도우미 함수입니다.
다음 예제에서는 수동으로 펌프되는 작업 큐를 만듭니다. 작업 및 완료 포트 모두에 대한 호출을 디스패치하는 두 개의 STL 스레드를 만듭니다.
SubmitCallbackXTaskQueueSubmitCallback 함수에 대한 코드 예제에서 정의된 도우미 함수입니다.

요구 사항

헤더: XTaskQueue.h 라이브러리: xgameruntime.lib 지원 플랫폼: Windows, XBOX One 제품군 콘솔 및 XBOX Series 콘솔

개념 문서

함께 보기

XTaskQueue 멤버
비동기 프로그래밍 모델
비동기 작업 큐 디자인
마지막 수정일 2026년 8월 24일