Compartir a través de


Función ExAcquireRundownProtectionEx (wdm.h)

La rutina ExAcquireRundownProtectionEx intenta adquirir protección de ejecución en un objeto compartido para que el autor de la llamada pueda acceder de forma segura al objeto.

Sintaxis

BOOLEAN ExAcquireRundownProtectionEx(
  [in, out] PEX_RUNDOWN_REF RunRef,
  [in]      ULONG           Count
);

Parámetros

[in, out] RunRef

Puntero a una estructura de EX_RUNDOWN_REF inicializada por una llamada anterior a la rutina ExInitializeRundownProtection. Las rutinas de protección de ejecución usan esta estructura para realizar un seguimiento del estado de ejecución del objeto compartido asociado. Esta estructura es opaca para los controladores.

[in] Count

Cantidad en la que se va a incrementar el recuento de instancias de ejecución del objeto. El recuento solo se incrementa si la rutina devuelve TRUE. Para obtener más información, vea Comentarios.

Valor devuelto

exAcquireRundownProtectionEx devuelve TRUE si la rutina adquiere correctamente la protección de degradación para el autor de la llamada. De lo contrario, devuelve FALSE. Un valor devuelto de FALSE indica que se ha iniciado la ejecución del objeto y que el objeto debe tratarse como no válido.

Observaciones

Para acceder a un objeto compartido de forma segura, un controlador llama a exAcquireRundownProtectionEx para adquirir protección de ejecución en el objeto.

El parámetro RunRef apunta a una estructura EX_RUNDOWN_REF que realiza un seguimiento del estado de ejecución del objeto asociado. Esta información de estado incluye un recuento de instancias de protección de ejecución que están actualmente en vigor en el objeto. El ExAcquireRundownProtectionEx y ExReleaseRundownProtectionEx rutinas incrementan y reducen este recuento por cantidades arbitrarias. Dos rutinas relacionadas, ExAcquireRundownProtection y ExReleaseRundownProtection, incremente y decremente este recuento en uno.

Siempre que el propio bloque de ejecución no esté paginado, se puede llamar a esta función en DISPATCH_LEVEL.

Para obtener más información, vea Run-Down Protection.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows Server 2003.
de la plataforma de destino de Universal
encabezado de wdm.h (incluya Wdm.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL (ver comentarios)
reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport)

Consulte también

EX_RUNDOWN_REF

ExAcquireRundownProtection

ExInitializeRundownProtection

ExReleaseRundownProtection

exReleaseRundownProtectionEx