Compartir a través de


Función FsRtlOplockGetAnyBreakOwnerProcess (ntifs.h)

FsRtlOplockGetAnyBreakOwnerProcess devuelve un propietario de un bloqueo supuestamente oportunista (oplock).

Sintaxis

PEPROCESS FsRtlOplockGetAnyBreakOwnerProcess(
  POPLOCK Oplock
);

Parámetros

Oplock

Puntero a la estructura oplock oppac del archivo. Este puntero debe haberse inicializado mediante una llamada anterior a FsRtlInitializeOplock.

Valor devuelto

Este método devuelve NULL si no se encuentra ningún propietario; de lo contrario, devuelve un puntero al objeto de proceso de un propietario (PEPROCESS).

Comentarios

FsRtlOplockGetAnyBreakOwnerProcess selecciona un propietario para el interbloqueo supuestamente importante de la siguiente manera:

  • Si el oplock tiene un propietario exclusivo, FsRtlOplockGetAnyBreakOwnerProcess devuelve un puntero al EPROCESS del propietario exclusivo.

  • Si el interbloqueo no tiene un propietario exclusivo y la cola de interrupción no está vacía, FsRtlOplockGetAnyBreakOwnerProcess devuelve arbitrariamente un puntero al primer EPROCESS de la cola.

  • De lo contrario, FsRtlOplockGetAnyBreakOwnerProcess devuelve NULL.

Si FsRtlOplockGetAnyBreakOwnerProcess devuelve un valor distinto de NULL, el autor de la llamada es responsable de llamar a ObDeferenceObject para liberar la referencia adquirida en su nombre.

FsRtlOplockGetAnyBreakOwnerProcess no intenta comprobar que una interrupción está realmente pendiente o que el proceso que devuelve es realmente el propietario.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 2004
Encabezado ntifs.h

Consulte también

FsRtlInitializeOplock

ObDeferenceObject