是否可以获取Qt使用的X11文件描述符,以便对其执行poll()操作?

是否可以获取Qt使用的X11文件描述符,以便对其执行poll()操作?,qt,select,x11,file-descriptor,epoll,Qt,Select,X11,File Descriptor,Epoll,我正在寻找要添加到poll()连接列表中的X11文件描述符。我已经有了一个工作正常的等待循环,但在另一个应用程序中,我还需要一些Qt窗口和小部件 如果我使用自己的X窗口编程,我只会使用连接到X11时获得的文件描述符 Display *d = XOpenDisplay(getenv("DISPLAY")); int fd = XConnectionNumber(d); // add fd as one of the file descriptors to listen to in my poll(

我正在寻找要添加到poll()连接列表中的X11文件描述符。我已经有了一个工作正常的等待循环,但在另一个应用程序中,我还需要一些Qt窗口和小部件

如果我使用自己的X窗口编程,我只会使用连接到X11时获得的文件描述符

Display *d = XOpenDisplay(getenv("DISPLAY"));
int fd = XConnectionNumber(d);
// add fd as one of the file descriptors to listen to in my poll()
有没有办法从Qt中检索该文件描述符?(据我所知,这将针对X-Windows)

对于感兴趣的人,我现有的
poll()
循环的源代码如下:

将为您提供显示,然后我想您可以像示例中那样使用XConnectionNumber()。我不确定如果Qt的事件循环没有运行该节目,它的工作效果会如何,但值得一试

fd仅用于poll()。要执行Qt事件,我打算调用
QtCode::eventDispatcher()->processEvents()
函数来执行事件。