Compartir a través de


PONLINE_ROUTINE función de devolución de llamada (resapi.h)

Marca un recurso como disponible para su uso. El tipo PONLINE_ROUTINE define un puntero a esta función.

Sintaxis

PONLINE_ROUTINE PonlineRoutine;

DWORD PonlineRoutine(
  [in]      RESID Resource,
  [in, out] LPHANDLE EventHandle
)
{...}

Parámetros

[in] Resource

Identificador de recurso del recurso que se va a poner a disposición.

[in, out] EventHandle

En la entrada, EventHandle es NULL. En la salida, EventHandle contiene un identificador para un objeto de sincronización no asignado. El archivo DLL de recursos puede indicar este identificador en cualquier momento para notificar un error de recurso al Monitor de recursos. EventHandle también se puede establecer en NULL en la salida, lo que indica que el recurso no admite la notificación de eventos asincrónica.

Valor devuelto

Código o valor devuelto Descripción
ERROR_SUCCESS
0
La operación se realizó correctamente y el recurso ahora está en línea.
ERROR_RESOURCE_NOT_AVAILABLE
5006 (0x138E)
El recurso fue arbitrado con otros sistemas, y uno de los otros sistemas ganó el arbitraje. Solo los recursos compatibles con cuórum devuelven este valor.
ERROR_IO_PENDING
997 (0x3E5)
La solicitud está pendiente y se ha activado un subproceso para procesar la solicitud en línea.
 

Si la operación no se realizó correctamente por otros motivos, Online debe devolver uno de los códigos de error del sistema.

Comentarios

Si la función punto de entrada En línea devuelve un código de error distinto de ERROR_IO_PENDING, Resource Monitor registra un evento y llama a Terminate.

Devolver un EventHandle válido produce las siguientes ventajas:

  • El Monitor de recursos no realizará sondeos LooksAlive . Evitar esta sobrecarga suele ser útil, especialmente cuando el archivo DLL admite varias instancias de recursos.
  • Puede notificar errores de recursos en cualquier momento mediante la señalización del identificador. El Monitor de recursos llamará inmediatamente a IsAlive para comprobar que se ha producido un error en el recurso.
Para obtener estrategias de implementación eficaces de la función punto de entrada en línea , consulte Implementación en línea.

Ejemplos

Consulte Ejemplos de DLL de recursos.

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Plataforma de destino Windows
Encabezado resapi.h

Consulte también

NetShareAdd

Resource DLL Entry-Point Functions