XCBではどうなってるのか

 XCBではイベント回りの事情はどうなってるのか、気になったのでついでに調べてみた。xcb_wait_for_eventというイベントが到着するまでブロックする関数と、xcb_poll_for_eventというイベントがなかったらNULLが返ってくる(ブロックしない)関数が用意されているようだ。自分でpoll/selectを使ってmain loopを制御したい場合はxcb_get_file_descriptorでfile descriptorが取得できる。
 ていうか、これ調べてて気づいたんだけど、XlibにもXNextEventがあるので、ソケットとか使わないプログラムなら別にビジーループ回す必要性はなかった。(たぶん。XNextEventが中でビジーループを回したりしてない限りは。)(ソケット使う場合でもConnectionNumberでfile descriptorを取得して自分でpoll/waitで待てる事は2回目だけど一応書いておく。)