Листинг 10.40. Функция sem_unlink
//my_pxsem_svsem/sem_unlink.с
1 #include "unpipc.h"
2 #include "semaphore.h"
3 int
4 mysem_unlink(const char *pathname)
5 {
6 int semid;
7 key_t key;
8 if ((key = ftok(pathname, 0)) == (key_t) –1)
9 return(-1);
10 if (unlink(pathname) == –1)
11 return(-1);
12 if ((semid = semget(key, 1, SVSEM_MODE)) == –1)
13 return(-1);
14 if (semctl(semid, 0, IPC_RMID) == –1)
15 return(-1);
16 return(0);
17 }