IoIsOperationSynchronous 함수(ntifs.h)

IoIsOperationSynchronous 루틴은 지정된 IRP가 동기 또는 비동기 I/O 요청을 나타내는지 여부를 결정합니다.

구문

BOOLEAN IoIsOperationSynchronous(
  [in] PIRP Irp
);

매개 변수

[in] Irp

작업에 대한 IRP에 대한 포인터입니다.

반환 값

IoIsOperationSynchronous 는 작업이 동기적이면 TRUE를 반환하고, 그렇지 않으면 FALSE를 반환합니다.

설명

IoIsOperationSynchronous 는 지정된 IRP가 다음 조건에 따라 동기 또는 비동기 I/O 작업을 요청하는지 여부를 결정합니다.

  • IRP가 비동기 페이징 I/O를 요청하는 경우 다른 조건 중 하나가 true인 경우에도 작업이 비동기적입니다.

  • IRP가 동기 페이징 I/O를 요청하는 경우 작업은 동기식입니다.

  • 파일 개체가 동기 I/O용으로 열린 경우 작업은 동기식입니다.

  • IRP_SYNCHRONOUS_API 플래그가 IRP에 설정된 경우 작업은 동기식입니다. 이 플래그는 비동기 I/O용으로 열린 파일 개체에서 수행된 경우에도 항상 동기식인 ZwQueryInformationFileZwSetInformationFile과 같은 작업에 대해 설정됩니다.

  • 위의 조건이 true가 아니면 작업이 비동기식입니다.

IRP에 I/O 또는 파일 시스템 제어 코드가 포함된 IOCTL 또는 FSCTL 요청이 비동기 I/O용으로 열린 경우에도 METHOD_BUFFERED 정의된 파일 시스템 제어 코드가 포함된 경우에도 IoIsOperationSynchronous는 TRUE를 반환합니다. 이러한 요청은 파일 시스템에 의해 동기적으로 수행될 수 있지만 모든 경우에 반드시 해당되는 것은 아닙니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 모든 수준

추가 정보

IRP

IoBuildSynchronousFsdRequest

IoCreateFile

IoCreateFileEx

IoCreateFileSpecifyDeviceObjectHint

ZwCreateFile

ZwQueryInformationFile

ZwSetInformationFile