XAsyncGetResult
비동기 공급자의 비동기 호출 결과를 반환합니다.
구문
HRESULT XAsyncGetResult(
XAsyncBlock* asyncBlock,
const void* identity,
size_t bufferSize,
void* buffer,
size_t* bufferUsed
)
매개 변수
asyncBlock _Inout_
형식: XAsyncBlock*
비동기 호출을 위해 XAsyncBegin에 전달된 XAsyncBlock에 대한 포인터입니다.
identity _In_opt_
형식: void*
선택 사항. 비동기 호출을 식별하는 데 사용할 수 있는 임의 토큰에 대한 포인터입니다. 해당하는 XAsyncBegin 호출의 ID 매개 변수 값이 지정되어 있으면 여기에서 동일한 포인터를 지정해야 합니다.
bufferSize _In_
형식: size_t
buffer에 지정된 결과 버퍼의 크기(바이트)입니다.
buffer _Out_writes_bytes_to_opt_(bufferSize, *bufferUsed)
형식: void*
결과 버퍼에 대한 포인터입니다.
bufferUsed _Out_opt_
형식: size_t*
선택 사항. buffer에 지정된 결과 버퍼에 쓰여진 바이트 수를 포함하는 포인터입니다. 이 값은 XAsyncComplete를 호출한 경우 비동기 공급자가 지정한 requiredResultSize 매개 변수의 값으로 정의됩니다.
반환 값
형식: HRESULT
성공한 경우 S_OK
을(를) 반환하고, 그렇지 않으면 오류 코드를 반환합니다. 오류 코드 목록은 오류 코드를 참조하세요.
비고
비동기 호출에 데이터 페이로드가 있는 경우 이 함수를 호출하면 데이터 페이로드가 반환됩니다. 비동기 호출에 데이터 페이로드가 없는 경우에는 이 함수를 호출할 필요가 없습니다. 데이터 페이로드가 없는 비동기 호출에 대해 이 함수를 호출하면 이 함수에서 E_NOT_SUPPORTED
오류 코드가 반환됩니다.
이 비동기 호출에 대한 XAsyncBegin 함수의 ID 매개 변수 값이 지정된 경우 이 함수의 ID 매개 변수에 대해서도 해당하는 동일한 값을 지정해야 합니다. 그렇게 하지 않으면 호출 불일치가 발생하고 함수에서 E_INVALIDARG
오류 코드가 반환됩니다.
이 함수가 완료되고 결과가 buffer에 지정된 결과 버퍼에 반환되면 asyncBlock에 지정된 XAsyncBlock이 완료되고 비동기 호출에 더 이상 연결되지 않습니다.
요건
헤더: XAsyncProvider. h
라이브러리: xgameruntime.lib
지원되는 플랫폼: Windows, Xbox One 패밀리 콘솔 및 Xbox Series 콘솔