RTEMS Logo

RTEMS 4.6.5 On-Line Library


Semaphore Manager sem_wait - Wait on a Semaphore

PREV UP NEXT Bookshelf RTEMS POSIX API User's Guide

9.4.6: sem_wait - Wait on a Semaphore

CALLING SEQUENCE:

int sem_wait(
  sem_t *sem
);

STATUS CODES:

EINVAL
The "sem" argument does not refer to a valid semaphore

DESCRIPTION:

This function attempts to lock a semaphore specified by sem. If the semaphore is available, then the semaphore is locked (i.e., the semaphore value is decremented). If the semaphore is unavailable (i.e., the semaphore value is zero), then the function will block until the semaphore becomes available. It will then successfully lock the semaphore. The semaphore remains locked until released by a sem_post() call.

If the call is unsuccessful, then the function returns -1 and sets errno to the appropriate error code.

NOTES:

Multiprocessing is not supported in this implementation.


PREV UP NEXT Bookshelf RTEMS POSIX API User's Guide

Copyright © 1988-2004 OAR Corporation