Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XEventsQueued(3X11) — NEWS-os 3.3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XIfEvent(3X11)

XNextEvent(3X11)

XPutBackEvent(3X11)

XFlush(3X11)  —  UNIX Programmer’s Manual

名称

XFlush, XSync, XEventsQueued, XPending − 出力バッファまたはイベントキューを扱う

形式

XFlush(display)
      Display ∗display; XSync(display, discard)
      Display ∗display;
      Bool discard; int XEventsQueued(display, mode)
     Display ∗display;
     int mode; int XPending(display)
      Display ∗display;

引数

discardXSync がイベントキューのすべてのイベントを削除するか否かを示すブール値を指定します。

displayX サーバへのコネクションを指定します。

modeモードを指定します。 QueuedAlready、 QueuedAfterFlush または QueuedAfterReading を渡せます。

解説

XFlush 関数は、 出力バッファをフラッシュします。 ほとんどのクライアントアプリケーションは、この関数の使用を必要としません。 なぜなら出力バッファは、必要に応じて、 XPending、 XNextEvent および XWindowEvent の呼び出しによって自動的にフラッシュされるからです。 サーバが発生したイベントは、ライブラリのイベントキューに入れられることがあります。 XSync 関数は、 出力バッファをフラッシュし、 X サーバがすべてのリクエストを受け取り、 処理するまで待ちます。 生じたエラーは、エラーハンドラが扱わなければなりません。
 Xlib が受け取った各エラーイベントについて、 XSync はクライアントアプリケーションのエラーハンドリングルーチンを コールします ( 第 8.12.2 節 ) 。 サーバが発生したイベントは、ライブラリのイベントキューに入れられます。 最後に、 False を渡した場合、 XSync はキューのイベントを削除しません。 True を渡した場合、 XSync はキューのすべてのイベント ( XSync がコールされる前にキューにあったイベントを含む ) を削除します。 クライアントアプリケーションが、 XSync をコールする必要はほとんどありません。 モードが QueuedAlready である場合、 XEventsQueued はイベントキューにすでにあるイベント数を返します
 ( システムコールを行うことはありません ) 。 モードが QueuedAfterFlush であれば、 XEventsQueued は、すでにキューにあるイベント数を返します。 キューにイベントがない場合、 XEventsQueued は出力バッファをフラッシュし、 アプリケーションのコネクションからより多くのイベントを読取ろうとし、 読取った数を返します。 モードが QueuedAfterReading であれば、 XEventsQueued は、すでにキューにあるイベント数を返します。 キューにイベントがない場合、 XEventsQueued は、出力バッファをフラッシュせずにアプリケーションのコネクション からより多くのイベントを読取ろうとし、読取った数を返します。 XEventsQueued は、イベントがすでにキューにある場合、常に I/O なしにただちに返ります。 QueuedAfterFlush モードの XEventsQueued は、動作が XPending と同じです。 QueuedAlready モードの XEventsQueued は、 XQLength 関数と同じです。 XPending 関数は、 X サーバから受け取ったが、イベントキューから削除されなかった イベントの数を返します。 XPending は、 QueuedAfterFlush モードが指定された場合の XEventsQueued と同じです。

関連事項

XIfEvent(3X11), XNextEvent(3X11), XPutBackEvent(3X11)
Xlib − C Language X Interface

NEWS-OSRelease 3.3

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026