Skip to main content

XAsyncBegin

XAsyncBlock을 초기화하고 비동기 공급자에 의한 비동기 작업을 시작합니다.

구문

매개 변수

asyncBlock   _Inout_
형식: XAsyncBlock*
비동기 호출에 대한 데이터를 보유하는 XAsyncBlock에 대한 포인터입니다. context   _In_opt_
형식: void*
선택 사항. XAsyncProvider 콜백 함수에 전달되는 XAsyncProviderData 개체에 저장될 컨텍스트 포인터입니다. identity   _In_opt_
형식: void*
선택 사항. 비동기 호출을 식별하는 데 사용할 수 있는 임의 토큰에 대한 포인터입니다. identityName   _In_opt_
형식: char*
선택 사항. 비동기 호출을 제공하는 함수의 이름을 지정하는 문자열입니다. 이 매개 변수의 값은 일반적으로 __FUNCTION__ 컴파일러 매크로로 설정됩니다. provider   _In_
형식: XAsyncProvider*
비동기 호출에 대해 호출할 XAsyncProvider 콜백 함수에 대한 포인터입니다.

반환 값

형식: HRESULT 성공하면 S_OK를 반환하고, 그렇지 않으면 오류 코드를 반환합니다. 오류 코드 목록은 오류 코드를 참조하세요.

설명

XAsyncBegin은 비동기 공급자가 비동기 작업을 시작해야 함을 나타내기 위해 호출됩니다. XAsyncBegin이 호출된 후 XAsyncGetResult와 같은 다른 XAsyncProvider 함수는 의미 있는 데이터를 제공합니다. XAsyncBegin이 호출되면 provider에 지정된 콜백 함수가 호출되고 XAsyncProviderop 매개 변수에 XAsyncOp::Begin을 지정합니다. 콜백 함수가 이 작업 코드를 구현하는 경우 XAsyncSchedule을 호출하거나 외부 수단을 통해 비동기 작업을 시작해야 합니다. XAsyncBegin이 반환된 후에는 콜백 함수가 시스템 정의 스레드에서 비동기 작업을 시작한 것으로 가정합니다.
provider에 지정된 콜백 함수는 XAsyncBegin 호출 체인에서 동기적으로 처리됩니다. 콜백 함수가 수행하는 비동기 작업은 스레드를 차단해서는 안 됩니다.
identityidentityName 매개 변수를 사용하여 콜백 함수에 대한 불일치하는 XAsyncOp::BeginXAsyncOp::GetResult 호출을 식별하고 관리할 수 있습니다. 일반적으로 identity의 값은 XAsyncBegin을 호출한 함수의 함수 포인터로 설정되고 identityName의 값은 __FUNCTION__ 컴파일러 매크로로 설정됩니다.

요구 사항

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

개념 설명서

함께 보기

XAsyncProvider 멤버
XAsyncProviderData
XAsyncProvider
XAsyncGetResult
비동기 프로그래밍 모델
마지막 수정일 2026년 8월 24일