Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
XInitThreads(3)			XLIB FUNCTIONS		       XInitThreads(3)

       XInitThreads, XLockDisplay, XUnlockDisplay - multi-threading support

       Status XInitThreads(void);

       void XLockDisplay(Display *display);

       void XUnlockDisplay(Display *display);

       display	 Specifies the connection to the X server.

       The  XInitThreads  function  initializes	 Xlib  support	for concurrent
       threads.	 This function must  be	 the  first  Xlib  function  a	multi-
       threaded	program	calls, and it must complete before any other Xlib call
       is made.	 This function returns a nonzero status	if initialization  was
       successful; otherwise, it returns zero.	On systems that	do not support
       threads,	this function always returns zero.

       It is only necessary to call this function if  multiple	threads	 might
       use Xlib	concurrently.  If all calls to Xlib functions are protected by
       some other access mechanism (for	example, a mutual exclusion lock in  a
       toolkit	or  through explicit client programming), Xlib thread initial-
       ization is not required.	 It is recommended that	 single-threaded  pro-
       grams not call this function.

       The  XLockDisplay  function  locks out all other	threads	from using the
       specified display.  Other threads attempting to use  the	 display  will
       block  until  the  display is unlocked by this thread.  Nested calls to
       XLockDisplay work correctly; the	display	will not actually be  unlocked
       until XUnlockDisplay has	been called the	same number of times as	XLock-
       Display.	 This function has no effect unless Xlib was successfully ini-
       tialized	for threads using XInitThreads.

       The  XUnlockDisplay  function allows other threads to use the specified
       display again.  Any threads that	have blocked on	the  display  are  al-
       lowed to	continue.  Nested locking works	correctly; if XLockDisplay has
       been called multiple times by a thread,	then  XUnlockDisplay  must  be
       called  an  equal  number  of  times before the display is actually un-
       locked.	This function has no effect unless Xlib	was successfully  ini-
       tialized	for threads using XInitThreads.

       Xlib - C	Language X Interface

X Version 11			 libX11	1.6.12		       XInitThreads(3)


Want to link to this manual page? Use this URL:

home | help