다음을 통해 공유


__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 함수

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

구문

NTSTATUS __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock(
  _Inout_ PRX_CONTEXT RxContext,
  _Inout_ PLIST_ENTRY BlockingIoQ,
  _In_    BOOLEAN     DropFcbLock
);

매개 변수

RxContext [in, out]
동기화되는 작업의 RX_CONTEXT 대한 포인터입니다.

BlockingIoQ [in, out]
큐의 LIST_ENTRY 대한 포인터입니다.

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

반환 값

__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 성공에 대한 STATUS_SUCCESS 반환하거나 다음 중 하나와 같은 적절한 NTSTATUS 값을 반환합니다.

반환 코드 설명
STATUS_CANCELLED

I/O 요청 및 연결된 RX_CONTEXT 취소되었습니다.

STATUS_PENDING

RxContext는 비동기 작업을 위한 것이었고 RxContext가 큐에 추가되었습니다.

설명

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

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

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

차단 I/O 요청이 취소된 경우 __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock STATUS_CANCELLED 반환하여 오류를 나타냅니다.

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

다음 두 매크로는 __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 호출하기 위해 Windows XP 및 Windows 2000에서 정의됩니다.

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

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

요구 사항

대상 플랫폼

데스크톱

버전

__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 루틴은 Windows XP 및 Windows 2000에서만 사용할 수 있습니다.

헤더

Rxcontx.h(Rxcontx.h 포함)

추가 정보

RxCompleteRequest_Real

RxCreateRxContext

RxDereference

RxDereferenceAndDeleteRxContext_Real

RxInitializeContext

RxPrepareContextForReuse

RxResumeBlockedOperations_Serially

__RxSynchronizeBlockingOperations