Man Linux: Main Page and Category List

NAME

       pthread_spin_unlock  -  unlock  a  spin  lock object (ADVANCED REALTIME
       THREADS)

SYNOPSIS

       #include <pthread.h>

       int pthread_spin_unlock(pthread_spinlock_t *lock);

DESCRIPTION

       The  pthread_spin_unlock()  function  shall  release  the   spin   lock
       referenced  by  lock  which  was  locked via the pthread_spin_lock() or
       pthread_spin_trylock() functions. The results are undefined if the lock
       is not held by the calling thread. If there are threads spinning on the
       lock when pthread_spin_unlock() is called, the lock  becomes  available
       and an unspecified spinning thread shall acquire the lock.

       The   results  are  undefined  if  this  function  is  called  with  an
       uninitialized thread spin lock.

RETURN VALUE

       Upon successful completion, the  pthread_spin_unlock()  function  shall
       return  zero;  otherwise, an error number shall be returned to indicate
       the error.

ERRORS

       The pthread_spin_unlock() function may fail if:

       EINVAL An invalid argument was specified.

       EPERM  The calling thread does not hold the lock.

       This function shall not return an error code of [EINTR].

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       The pthread_spin_unlock() function is part of the Spin Locks option and
       need not be provided on all implementations.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       pthread_spin_destroy()  ,  pthread_spin_lock()  ,  the Base Definitions
       volume of IEEE Std 1003.1-2001, <pthread.h>

COPYRIGHT

       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .