__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 포함) |
추가 정보
RxDereferenceAndDeleteRxContext_Real