다음을 통해 공유


AsyncProviderData

비동기 공급자의 콜백 함수에 전달되는 데이터를 나타냅니다.

구문

typedef struct XAsyncProviderData {  
    XAsyncBlock* async;  
    size_t bufferSize;  
    void* buffer;  
    void* context;  
} XAsyncProviderData  

멤버

async
형식: XAsyncBlock*

비동기 호출에 대한 데이터를 포함하는 XAsyncBlock에 대한 포인터입니다.

bufferSize
형식: size_t

buffer에 지정된 결과 버퍼의 크기(바이트)입니다. 이 값은 XAsyncOp:: GetResult 연산 코드를 사용하여 콜백 함수를 호출한 경우에만 유효하고 이 값은 해당 XAsyncComplete 함수 호출의 requiredBufferSize 매개 변수에 지정된 값보다 크거나 같습니다.

buffer
형식: void*

콜백 함수의 결과 버퍼에 대한 포인터입니다. 이 값은 XAsyncOp:: GetResult 연산 코드로 콜백 함수를 호출한 경우에만 유효합니다.

context
형식: void*

XAsyncBegin이 호출되면 콜백 함수에 컨텍스트 포인터가 전달됩니다.

비고

이 구조는 비동기 공급자의 콜백 함수에 전달되는 데이터를 나타냅니다. 콜백 함수가 호출될 때마다 이 구조의 데이터가 변경될 수 있습니다. 콜백 함수는 각 호출에 지정된 XAsyncOp 연산 코드에 따라 결정되는 비동기 작업을 수행하기 위해 반복적으로 호출되며 이 구조의 데이터도 각 호출 시 변경할 수 있습니다. bufferbufferSize 값은 콜백 함수를 XAsyncOp::GetResult 연산 코드로 호출한 경우에만 유효합니다. context 값은 콜백 함수를 어떠한 연산 코드로 호출한 경우에도 유효하지만XAsyncOp::Cleanup연산 코드를 사용하여 콜백 함수를 호출한 경우에만 해제되어야 합니다.

XAsyncOp에서GetResultCleanup에 대한 비동기 작업을 수행 시 XAsyncProviderData과 상호 작용하는 콜백 함수에 대한 예제는비동기 프로그래밍 모델의 "비동기 라이브러리" 섹션을 참조하세요.

요건

헤더: XAsyncProvider. h

지원되는 플랫폼: Windows, Xbox One 패밀리 콘솔 및 Xbox Series 콘솔

참고 항목

XAsyncProvider 멤버
XAsyncComplete
XAsyncBegin
XAsyncOp
비동기 프로그래밍 모델