Книга: UNIX: взаимодействие процессов

Функция sem_getvalue

Функция sem_getvalue

Последняя функция приведена в листинге 10.44. Это функция sem_getvalue, возвращающая текущее значение семафора.

11-14 Текущее значение семафора получается отправкой команды GETVAL функции semctl.

Листинг 10.44. Функция sem_getvalue

//my_pxsem_svsem/sem_getvalue.с
1  #include "unpipc.h"
2  #include "semaphore.h"
3  int
4  mysem_getvalue(mysem_t *sem, int *pvalue)
5  {
6   int val;
7   if (sem->sem_magic != SEM_MAGIC) {
8    errno = EINVAL;
9    return(-1);
10  }
11  if ((val = semctl(sem->sem_semid, 0, GETVAL)) < 0)
12   return(-1);
13  *pvalue = val;
14  return(0);
15 }

Оглавление книги


Генерация: 0.306. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз