Функция 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 }

Данный текст является ознакомительным фрагментом.