Example
struct sembuf semWait[1] = { 0, -1, 0 },
semSignal[1] = { 0, 1, 0 };
int semID;
semop( semID, semSignal, 1 ); /* init to 1 */
while( (semop( semID, semWait, 1 ) == -1) &&
(errno == EINTR) )
;
{ /* critical section */ }
while( (semop( semID, semSignal, 1 ) == -1) &&
(errno == EINTR) )
;