Compartilhar via


Função FsRtlOplockGetAnyBreakOwnerProcess (ntifs.h)

FsRtlOplockGetAnyBreakOwnerProcess retorna um proprietário de um bloqueio oportunista supostamente quebrando (oplock).

Sintaxe

PEPROCESS FsRtlOplockGetAnyBreakOwnerProcess(
  POPLOCK Oplock
);

Parâmetros

Oplock

Ponteiro para a estrutura oplock opaca do arquivo. Esse ponteiro deve ter sido inicializado por uma chamada anterior para FsRtlInitializeOplock.

Valor de retorno

Esse método retornará NULL se nenhum proprietário puder ser encontrado; caso contrário, ele retorna um ponteiro para o PEPROCESS (objeto de processo) de um proprietário.

Observações

FsRtlOplockGetAnyBreakOwnerProcess seleciona um proprietário para o oplock supostamente quebrando da seguinte maneira:

  • Se o oplock tiver um proprietário exclusivo, FsRtlOplockGetAnyBreakOwnerProcess retornará um ponteiro para o EPROCESS do proprietário exclusivo.

  • Se o oplock não tiver um proprietário exclusivo e a fila de interrupção não estiver vazia, FsRtlOplockGetAnyBreakOwnerProcess retornará arbitrariamente um ponteiro para o primeiro EPROCESS na fila.

  • Caso contrário, FsRtlOplockGetAnyBreakOwnerProcess retornará NULL.

Se FsRtlOplockGetAnyBreakOwnerProcess retornar não NULL, o chamador será responsável por chamar ObDeferenceObject para liberar a referência adquirida em seu nome.

FsRtlOplockGetAnyBreakOwnerProcess não tenta verificar se uma interrupção está realmente pendente ou se o processo retornado é, de fato, o proprietário.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10, versão 2004
cabeçalho ntifs.h

Consulte também

FsRtlInitializeOplock

ObDeferenceObject