Provided by: aolserver4-dev_4.5.1-18.1_amd64 bug

NAME

       Ns_MasterLock, Ns_MasterUnlock - Enter and leave the single master critical section lock

SYNOPSIS

       #include "ns.h"

       void
       Ns_MasterLock(void)

       void
       Ns_MasterUnlock(void)
_________________________________________________________________

DESCRIPTION

       The  single  master  critical  section  lock is used throughout the core server to protect
       portions of code from being run by more than one thread at a time. These  are  convenience
       functions  which  actually  make calls to Ns_CsEnter and Ns_CsLeave to perform the locking
       and unlocking function.

       You should not use these functions in your modules. To protect critical sections  in  your
       modules  you  should  create  and initialize your own named locks, then wrap your critical
       sections with calls to Ns_CsEnter and Ns_CsLeave.

       Ns_MasterLock()

              Enter the single master lock.  The  thread  that  holds  this  lock  is  guaranteed
              exclusive  access  to  the  section of code that follows the call to Ns_MasterLock.
              Other threads that attempt to enter  the  master  critical  section  while  another
              thread  owns the master lock will block until the owning thread releases the master
              lock.

              Be extremely careful with code you place within the master critical section. If the
              thread that owns the master lock blocks for any reason while in the master critical
              section, other threads that need to enter that section of code will block until the
              master lock is released.

       Ns_MasterUnlock()

              Leave  the  single  master  critical  section.  The  thread that owns the lock must
              release it after the critical section of code has completed so that  other  threads
              may execute the critical section code.

SEE ALSO

       nsd(1), info(n), Ns_CsEnter(3), Ns_CsLeave(3)

KEYWORDS