다음을 통해 공유


GetNotificationResourceManagerAsync 함수(ktmw32.h)

RM(리소스 관리자)에 대한 비동기 알림을 요청하고 받습니다. 이 함수는 트랜잭션 상태가 변경될 때 RM 레지스터에서 알림을 받는 데 사용됩니다.

구문

BOOL GetNotificationResourceManagerAsync(
  [in]  HANDLE                    ResourceManagerHandle,
  [out] PTRANSACTION_NOTIFICATION TransactionNotification,
  [in]  ULONG                     TransactionNotificationLength,
  [out] PULONG                    ReturnLength,
  [in]  LPOVERLAPPED              lpOverlapped
);

매개 변수

[in] ResourceManagerHandle

리소스 관리자에 대한 핸들입니다.

[out] TransactionNotification

사용 가능한 첫 번째 알림을 받는 TRANSACTION_NOTIFICATION 구조체에 대한 포인터입니다.

[in] TransactionNotificationLength

TransactionNotification 버퍼의 크기(바이트)입니다.

[out] ReturnLength

TransactionNotification 매개 변수에서 받은 알림의 실제 크기를 수신하는 변수에 대한 포인터입니다.

[in] lpOverlapped

비동기 작업에 필요한 OVERLAPPED 구조체에 대한 포인터입니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError 함수를 호출합니다.

다음 목록에서는 가능한 오류 코드를 식별합니다.

설명

모든 리소스 관리자는 등록하여 TRANSACTION_NOTIFY_PREPREPARE, TRANSACTION_NOTIFY_PREPARETRANSACTION_NOTIFY_COMMIT 알림을 수신해야 합니다. 리소스 관리자는 TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT 지원할 수 있지만 다단계 사전 준비, 준비 및 커밋 알림도 지원해야 합니다. 리소스 관리자가 받을 수 있는 모든 알림 목록은 TRANSACTION_NOTIFICATION 참조하세요.

RM(리소스 관리자)은 알림을 제공할 때 KTM에서 사용할 여러 버퍼를 제공하기 위해 이 함수를 두 번 이상 호출할 수 있습니다. 이 함수에 대한 호출 수는 RM이 수행하는 로드 양에 따라 달라집니다.

SetResourceManagerCompletionPort 함수가 호출된 후에 이 함수를 호출해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 ktmw32.h
라이브러리 KtmW32.lib
DLL KtmW32.dll

참고 항목

CreateEnlistment

커널 트랜잭션 관리자 함수

NOTIFICATION_MASK

SetResourceManagerCompletionPort

TRANSACTION_NOTIFICATION

TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT