waitsem man page on Xenix

Man page or keyword search:  
man Server   1130 pages
apropos Keyword Search (all sections)
Output format
Xenix logo
[printable version]



     WAITSEM(S)		      XENIX System V		    WAITSEM(S)

     Name
	  waitsem, nbwaitsem - Awaits and checks access to a resource
	  governed by a semaphore.

     Syntax
	  int waitsem(sem_num);
	  int sem_num;

	  int nbwaitsem(sem_num);
	  int sem_num;

     Description
	  waitsem gives the calling process access to the resource
	  governed by the semaphore sem_num. If the resource is in use
	  by another process, waitsem will put the process to sleep
	  until the resource becomes available; nbwaitsem will return
	  the error ENAVAIL.  waitsem and nbwaitsem are used in
	  conjunction with sigsem to allow synchronization of
	  processes wishing to access a resource.  One or more
	  processes may waitsem on the given semaphore and will be put
	  to sleep until the process which currently has access to the
	  resource issues sigsem.  sigsem causes the process which is
	  next in line on the semaphore's queue to be rescheduled for
	  execution.  The semaphore's queue is organized in first in
	  first out (FIFO) order.

     System Compatibility
	  waitsem can only be used to synchronize semaphores created
	  under
	   Version 3.0, not for	 System V semaphores.

     See Also
	  creatsem(S), opensem(S), sigsem(S)

     Diagnostics
	  waitsem returns the value (int) -1 if an error occurs.  If
	  sem_num has not been previously opened by a call to opensem
	  or creatsem, errno is set to EBADF.  If sem_num does not
	  refer to a semaphore type file, errno is set to ENOTNAM.
	  All processes waiting (or attempting to wait) on the
	  semaphore return with errno set to ENAVAIL when the process
	  controlling the semaphore exits without relinquishing
	  control (thereby leaving the resource in an undeterminate
	  state).  If a process does two waitsems in a row without
	  doing an intervening sigsem, errno is set to EINVAL.

     Notes
	  This feature is a XENIX specific enhancement and may not be
	  present in all UNIX implementations.	This routine must be
	  linked with the linker option -lx.

     Page 1					      (printed 8/7/87)

[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server Xenix

List of man pages available for Xenix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net