XPending()在窗口关闭时报告错误

时间:2014-02-11 21:40:09

标签: xlib xserver

在对XPending()的调用中,我在终端中收到以下错误消息:

XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"

单击窗口上的关闭按钮(角落中的十字)后会发生这种情况。

否则程序运行正常。我建议当我单击关闭按钮时,窗口管理器会突然断开我的应用程序与XServer的连接。因此连接不再处于活动状态,XPending返回错误。在调用XPending()之前,我能否以某种方式检查连接是否仍处于活动状态?什么是推荐的“良好做法”?

1 个答案:

答案 0 :(得分:0)

在关闭窗口之前,您需要处理icccm兼容窗口管理器发送给客户端的WM_DELETE_WINDOW消息。在最后一个顶级窗口关闭后,X服务器的连接通常由服务器关闭。