Compartir a través de


PINIT_ONCE_FN función de devolución de llamada (synchapi.h)

Una función de devolución de llamada definida por la aplicación. Especifique un puntero a esta función al llamar a la función InitOnceExecuteOnce . El tipo PINIT_ONCE_FN define un puntero a esta función de devolución de llamada. InitOnceCallback es un marcador de posición para el nombre de función definido por la aplicación.

Sintaxis

PINIT_ONCE_FN PinitOnceFn;

BOOL PinitOnceFn(
  [in, out]           PINIT_ONCE InitOnce,
  [in, out, optional] PVOID Parameter,
  [out, optional]     PVOID *Context
)
{...}

Parámetros

[in, out] InitOnce

Puntero a la estructura de inicialización única.

[in, out, optional] Parameter

Parámetro opcional que se pasó a la función de devolución de llamada.

[out, optional] Context

Los datos que se van a almacenar con la estructura de inicialización única. Si Context hace referencia a un valor, el INIT_ONCE_CTX_RESERVED_BITS de orden bajo del valor debe ser cero. Si Context apunta a una estructura de datos, la estructura de datos debe estar alineada con DWORD. El contexto no debe ser un puntero de código en Arm32, ya que los punteros de código arm32 siempre tienen el bit menos significativo establecido, consulte la ABI de Arm32 para obtener más información.

Valor devuelto

Si la función devuelve TRUE, el bloque se marca como inicializado.

Si la función devuelve FALSE, el bloque no se marca como inicializado y se produce un error en la llamada a InitOnceExecuteOnce . Para comunicar información de error adicional, llame a SetLastError antes de devolver FALSE.

Comentarios

Esta función puede crear un objeto de sincronización y devolverlo en el parámetro lpContext .

Para compilar una aplicación que use esta función, defina _WIN32_WINNT como 0x0600 o posterior. Para obtener más información, vea Uso de los encabezados de Windows.

Ejemplos

Para obtener un ejemplo que use esta función, consulte Uso de One-Time Inicialización.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado synchapi.h (incluya Windows.h)

Consulte también

InitOnceExecuteOnce

InitOnceInitialize

Funciones de sincronización