*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->HP-UX 11i man pages -> msem_unlock (2)              
Title
Content
Arch
Section
 

Contents


 msem_unlock(2)                                               msem_unlock(2)




 NAME    [Toc]    [Back]
      msem_unlock - unlock a semaphore

 SYNOPSIS    [Toc]    [Back]
      #include <sys/mman.h>

      int msem_unlock(msemaphore *sem, int condition);

 DESCRIPTION    [Toc]    [Back]
      msem_unlock() unlocks a binary semaphore.

      sem points to an msemaphore structure that specifies the semaphore to
      be unlocked.

      If the condition argument is zero, the semaphore will be unlocked,
      whether or not any other processes are currently attempting to lock
      it.  If the condition argument is MSEM_IF_WAITERS, and some other
      process is waiting to lock the semaphore or the implementation cannot
      reliably determine whether some process is waiting to lock the
      semaphore, the semaphore is unlocked by the calling process.  If the
      condition argument is MSEM_IF_WAITERS, and no process is waiting to
      lock the semaphore, the semaphore is not unlocked and an error is
      returned.

      All calls to msem_lock() and msem_unlock() by multiple processes
      sharing a common msemaphore structure behave as if the calls were
      serialized.

      If the msemaphore structure contains any value not resulting from a
      call to msem_init() followed by a (possibly empty) sequence of calls
      to msem_lock() and msem_unlock(), the results are undefined.  The
      address of an msemaphore uniquely identifies the semaphore.  If the
      msemaphore structure contains any value copied from a msemaphore
      structure at a different address, the result is undefined.

 IMPLEMENTATION NOTES    [Toc]    [Back]
      The system attempts to ignore or recover from invalid values placed in
      the msemaphore structure, but this is not guaranteed for all cases.

 RETURN VALUE    [Toc]    [Back]
      Upon success, msem_unlock() returns zero; otherwise, it returns -1 and
      sets errno to indicate the error.

 ERRORS    [Toc]    [Back]
      msem_unlock() fails if any of the following conditions are
      encountered:

           [EAGAIN]       MSEM_IF_NOWAIT was specified and there were no
                          waiters.





 Hewlett-Packard Company            - 1 -   HP-UX 11i Version 2: August 2003






 msem_unlock(2)                                               msem_unlock(2)




           [EINVAL]       sem points to an msemaphore structure that has
                          been removed, or condition is invalid.

           [EFAULT]       sem is an invalid pointer.

 AUTHOR    [Toc]    [Back]
      msem_unlock() was developed by HP and OSF.

 SEE ALSO    [Toc]    [Back]
      msem_init(2), msem_lock(2), msem_remove(2), mman(5).

 STANDARDS CONFORMANCE    [Toc]    [Back]
      msem_unlock(): AES


 Hewlett-Packard Company            - 2 -   HP-UX 11i Version 2: August 2003
[ Back ]
      
      
 Similar pages
Name OS Title
sem_post FreeBSD increment (unlock) a semaphore
sem_post OpenBSD increment (unlock) a semaphore
sem_post HP-UX unlock a POSIX semaphore
pthread_mutex_unlock FreeBSD unlock a mutex
pthread_mutex_unlock OpenBSD unlock a mutex
pthread_rwlock_unlock Tru64 Unlock a read-write lock
mlock IRIX lock or unlock pages in memory
mlockall IRIX lock or unlock address space
vput FreeBSD decrement the use count for a vnode and unlock it
CDallowremoval IRIX unlock the CD-ROM drive eject button
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service