Статическая инициализация примитивов синхронизации (sync_types.h)

API определен в заголовочном файле sysroot-*-kos/include/kos/sync_types.h из состава KasperskyOS SDK.

API позволяет инициализировать при компиляции следующие примитивы синхронизации:

Сведения о макросах API приведены в таблице ниже.

Пример статической инициализации мьютекса:

static KosMutex mmap_lock = KosInitializedMutex;

Макросы sync_types.h

Макрос

Сведения о макросе

KosInitializedMutexEx()

Назначение

Инициализирует мьютекс без поддержки наследования приоритета.

Параметры

  • [in] _recursive – значение, которое задает, должен ли мьютекс быть рекурсивным (1 – да, 0 – нет).

Значения макроса

Код, инициализирующий мьютекс.

KosInitializedMutex

Назначение

Инициализирует мьютекс без поддержки наследования приоритета, который не является рекурсивным.

Параметры

Нет.

Значения макроса

Код, инициализирующий мьютекс.

KosInitializedRtMutex

Назначение

Инициализирует мьютекс с поддержкой наследования приоритета.

Параметры

Нет.

Значения макроса

Код, инициализирующий мьютекс.

KosInitializedRecursiveMutex

Назначение

Инициализирует рекурсивный мьютекс.

Параметры

Нет.

Значения макроса

Код, инициализирующий мьютекс.

KosInitializedEvent

Назначение

Инициализирует событие.

После инициализации событие находится в несигнальном состоянии.

Параметры

Нет.

Значения макроса

Код, инициализирующий событие.

KosInitializedSemaphore

Назначение

Инициализирует семафор.

Параметры

Нет.

Значения макроса

Код, инициализирующий семафор.

KosInitializedCondvar

Назначение

Инициализирует условную переменную.

Параметры

Нет.

Значения макроса

Код, инициализирующий условную переменную.

KosInitializedRWLock

Назначение

Инициализирует блокировку чтения-записи.

Параметры

Нет.

Значения макроса

Код, инициализирующий блокировку чтения-записи.

В начало