다음을 통해 공유


__RxSynchronizeBlockingOperations 함수(rxcontx.h)

__RxSynchronizeBlockingOperations 차단 I/O 요청을 동일한 작업 큐에 동기화합니다.

구문

NTSTATUS __RxSynchronizeBlockingOperations(
  [in, out] IN OUT PRX_CONTEXT RxContext,
  [in]      IN PFCB            Fcb,
  [in, out] IN OUT PLIST_ENTRY BlockingIoQ,
  [in]      IN BOOLEAN         DropFcbLock
);

매개 변수

[in, out] RxContext

동기화되는 작업의 RX_CONTEXT 대한 포인터입니다.

[in] Fcb

FCB에 대한 포인터입니다.

[in, out] BlockingIoQ

큐의 LIST_ENTRY 대한 포인터입니다.

[in] DropFcbLock

FCB 리소스를 해제해야 하는지 여부를 나타내는 부울 값입니다. 이 매개 변수가 TRUE이면 FCB 리소스가 해제됩니다.

반환 값

__RxSynchronizeBlockingOperations 성공 또는 다음 중 하나와 같은 적절한 NTSTATUS 값에 대한 STATUS_SUCCESS 반환합니다.

반환 코드 설명
STATUS_CANCELLED
I/O 요청 및 연결된 RX_CONTEXT 취소되었습니다.
STATUS_PENDING
RxContext는 비동기 작업을 위한 것이었고 RxContext가 큐에 추가되었습니다.

설명

__RxSynchronizeBlockingOperations 루틴은 차단 I/O 요청을 동일한 작업 큐에 동기화합니다. RDBSS는 내부적으로 __RxSynchronizeBlockingOperations 사용하여 명명된 파이프 작업을 동기화합니다. 작업 큐는 Fcb와 연결된 FOBX(파일 개체 확장명)에서 참조하는 큐입니다.

네트워크 미니 리다이렉터에서는 __RxSynchronizeBlockingOperations 사용하여 네트워크 미니 리다이렉터에서 유지 관리하는 별도의 큐에서 작업을 동기화할 수 있습니다.

RxContext가 비동기 작업으로 표시된 경우 __RxSynchronizeBlockingOperationsRxContext를 큐에 추가하고 STATUS_PENDING 반환합니다. RxContext가 동기 작업으로 표시된 경우 __RxSynchronizeBlockingOperations 차단되고 RxResumeBlockedOperations_Serially 호출할 때 RxContext가 다시 시작됩니다.

차단 I/O 요청이 취소된 경우 __RxSynchronizeBlockingOperations 오류를 나타내는 STATUS_CANCELLED 반환합니다.

RxContext가 가리키는 RX_CONTEXT 구조체의 SyncEvent 멤버는 __RxSynchronizeBlockingOperations 호출하기 전에 다시 설정되어야 합니다. DropFcbLock 매개 변수가 TRUE로 설정된 경우 __RxSynchronizeBlockingOperations 호출하기 전에 FCB 리소스를 잠가야 합니다.

다음 두 매크로는 __RxSynchronizeBlockingOperations 호출하기 위해 Windows Server 2003 이상에서 정의됩니다.

RxSynchronizeBlockingOperations - DropFcbLock 매개 변수가 FALSE로 설정된 호출입니다.

RxSynchronizeBlockingOperationsAndDropFcbLock - DropFcbLock 매개 변수가 TRUE로 설정된 호출입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 __RxSynchronizeBlockingOperations 루틴은 Windows Server 2003에서만 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 rxcontx.h(Rxcontx.h 포함)

추가 정보

RxCompleteRequest_Real

RxCreateRxContext

RxDereference

RxDereferenceAndDeleteRxContext_Real

RxInitializeContext

RxPrepareContextForReuse

RxResumeBlockedOperations_Serially

__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock