2011-12-17 117 views
1

在C++中使用xlib是否有一種異步處理事件的方法? XNextEvent阻塞,直到事件到達。唯一的方法是從不同的線程調用XNextEvent?我知道XCB正在開發並支持併發(我認爲?),但我需要用xlib進行教育。謝謝:)XLib異步事件處理(沒有XBC)

回答

6

檢查與XPending事件。 它不會阻止。

while (XPending(dpy)) 
{ 
    XEvent ev; 
    XNextEvent(dpy, &ev); 
    .... 
    if (ev.type == KeyPress) 
    { 
     .... 
    } 
} 
+0

謝謝!這回答了我的問題:) – Ell 2011-12-17 19:05:11