manpagez: man pages & more
man XFlush(3)
Home | html | info | man
XFlush(3)                       XLIB FUNCTIONS                       XFlush(3)




NAME

       XFlush,  XSync, XEventsQueued, XPending - handle output buffer or event
       queue


SYNTAX

       int XFlush(Display *display);

       int XSync(Display *display, Bool discard);

       int XEventsQueued(Display *display, int mode);

       int XPending(Display *display);


ARGUMENTS

       discard   Specifies a Boolean value that indicates whether  XSync  dis-
                 cards all events on the event queue.

       display   Specifies the connection to the X server.

       mode      Specifies the mode.  You can pass QueuedAlready, QueuedAfter-
                 Flush, or QueuedAfterReading.


DESCRIPTION

       The XFlush function flushes the output buffer.   Most  client  applica-
       tions need not use this function because the output buffer is automati-
       cally flushed as needed by calls to XPending, XNextEvent, and  XWindow-
       Event.   Events  generated  by  the  server  may  be  enqueued into the
       library's event queue.

       The XSync function flushes the output buffer and then waits  until  all
       requests  have been received and processed by the X server.  Any errors
       generated must be handled by the  error  handler.   For  each  protocol
       error received by Xlib, XSync calls the client application's error han-
       dling routine (see section 11.8.2).  Any events generated by the server
       are enqueued into the library's event queue.

       Finally,  if you passed False, XSync does not discard the events in the
       queue.  If you passed True, XSync discards all  events  in  the  queue,
       including  those events that were on the queue before XSync was called.
       Client applications seldom need to call XSync.

       If mode is QueuedAlready, XEventsQueued returns the  number  of  events
       already in the event queue (and never performs a system call).  If mode
       is QueuedAfterFlush, XEventsQueued returns the number of events already
       in  the  queue if the number is nonzero.  If there are no events in the
       queue, XEventsQueued flushes the output buffer, attempts to  read  more
       events  out  of  the  application's  connection, and returns the number
       read.  If mode is QueuedAfterReading, XEventsQueued returns the  number
       of  events already in the queue if the number is nonzero.  If there are
       no events in the queue, XEventsQueued attempts to read more events  out
       of  the application's connection without flushing the output buffer and
       returns the number read.

       XEventsQueued always returns  immediately  without  I/O  if  there  are
       events  already in the queue.  XEventsQueued with mode QueuedAfterFlush
       is  identical  in  behavior  to  XPending.   XEventsQueued  with   mode
       QueuedAlready is identical to the XQLength function.

       The  XPending  function  returns  the  number  of events that have been
       received from the X server but have not been  removed  from  the  event
       queue.    XPending   is   identical  to  XEventsQueued  with  the  mode
       QueuedAfterFlush specified.


SEE ALSO

       AllPlanes(3), XIfEvent(3), XNextEvent(3), XPutBackEvent(3)
       Xlib - C Language X Interface



X Version 11                     libX11 1.7.1                        XFlush(3)

xorg-libX11 1.7.1 - Generated Thu May 20 09:25:15 CDT 2021
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.