Книга: Программирование для Linux. Профессиональный подход
5.2.2. Инициализация семафоров
5.2.2. Инициализация семафоров
Выделение и инициализация семафора — две разные операции. Чтобы проинициализировать семафор, вызовите функцию semctl()
, задав второй аргумент равным нулю, а третий аргумент — равным константе SETALL
. Четвертый аргумент должен иметь тип union semun
, поле array
которого указывает на массив значений типа unsigned short
. Каждое значение инициализирует один семафор из набора.
В листинге 5.3 представлена функция, инициализирующая двоичный семафор.
Оглавление статьи/книги