다음을 통해 공유


XAsync 라이브러리 개요

XAsync 라이브러리는 비동기 작업과 그 콜백을 정의하는 메서드와 데이터를 제공합니다. 기본 비동기 기본형 XAsyncBlock은 이 라이브러리에 정의됩니다. 모든 비동기 작업에 필수입니다.

비동기 블록을 넘어서 이 라이브러리는 기본 비동기 호출을 시작하고, 비동기 작업 상태를 가져오며, 작업 취소를 시도하는 메서드를 제공합니다.

XAsyncBlock

XAsyncBlock는 완료 콜백을 구현하고, 완료 콜백에 데이터를 제공하고, 실행할 작업 큐를 선택하는 데 사용되는 구성원을 포함하는 기본 비동기 기본형입니다.

비동기 블록은 런타임 동작을 위해 시스템에서 내부적으로 사용하는 개인 데이터도 포함합니다. 따라서 이 블록은 여러 활성 작업 간 공유할 수 없습니다. 시스템은 이 데이터를 사용하여 호출이 활성인 상태에서 비동기 호출을 식별합니다.

struct XAsyncBlock
{
    /// <summary>
    /// The queue to queue the call on.
    /// </summary>
    XTaskQueueHandle queue;
    
    /// <summary>
    /// Optional context pointer to pass to the callback.
    /// </summary>
    void* context;
    
    /// <summary>
    /// Optional callback that is invoked when the call completes.
    /// </summary>
    XAsyncCompletionRoutine* callback;
    
    /// <summary>
    /// Internal use only.
    /// </summary>
    unsigned char internal[sizeof(void*) * 4];
};

참고 항목

비동기 작업 설정
간단한 작업 실행
Microsoft 게임 개발 키트 API 작업 실행
XAsync 시스템 API 콘텐츠