Функция InitOnceInitialize (synchapi.h)
Инициализирует структуру одноразовой инициализации.
Синтаксис
void InitOnceInitialize(
[out] PINIT_ONCE InitOnce
);
Параметры
[out] InitOnce
Указатель на структуру одноразовой инициализации.
Возвращаемое значение
None
Remarks
Функция InitOnceInitialize используется для динамической инициализации структуры одноразовой инициализации. Чтобы инициализировать структуру статически, назначьте INIT_ONCE_STATIC_INIT константы переменной структуры.
Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0600 или более поздней версии. Дополнительные сведения см. в разделе Использование заголовков Windows.
Невозможно переместить или скопировать объект одноразовой инициализации. Процесс не должен изменять объект инициализации и должен рассматривать его как логически непрозрачный. Используйте функции одноразовой инициализации только для управления объектами одноразовой инициализации.
Примеры
В следующем примере метод InitOnceInitialize вызывается для инициализации структуры одноразовой инициализации с именем InitOnce
. Кроме того, структуру можно объявить как глобальную переменную, как показано в разделе Использование инициализации One-Time.
//Requires Windows Vista, Windows Server 2008 or later
#define _WIN32_WINNT 0x0600
#include <windows.h>
BOOL StartInitialization()
{
INIT_ONCE InitOnce;
InitOnceInitialize(&InitOnce);
//...
return TRUE;
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | synchapi.h (включая Windows.h в Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |