gpt4 book ai didi

x11 - XSync - 丢弃参数是什么意思?

转载 作者:行者123 更新时间:2023-12-04 21:45:51 25 4
gpt4 key购买 nike

根据man page , 调用XSync(dpy, 1)丢弃队列中的事件,但这到底意味着什么?如果它们没有被丢弃,它们是否被发送了两次(一次由 XSync() 调用,第二次在队列正常清空时)?或者它就像一个垃圾收集器(事件会在稍后被丢弃)?

最佳答案

XSync 等待直到请求输出缓冲区被清空(发送到服务器)。如果 discard参数为 True ,此函数将丢弃所有排队的事件。这些事件是从 X 服务器接收的。

考虑以下协议(protocol)交换:

C -> S  QueryKeymap request
C <- S ConfigureNotify event
C <- S QueryKeymap reply

您调用 XQueryKeymap在发送 QueryKeymap 的客户端应用程序中协议(protocol)消息到服务器。这样做时,您调整了窗口大小,因此 ConfigureNotify事件。

如果你运行 XSync(display, False)在您的 XQueryKeymap 之后,然后客户端将等待直到收到回复。下一个 XPending(display) call 将返回排队事件的数量,即 1对于 ConfigureNotify上面的事件。

XSync(display, True)被使用,然后 XPending(display)返回 0对于上述情况。

如果您的代码将被其他人使用,请通过 节省他们的时间不是 使用 True .使用 True 时可能出错的示例,见 http://bugzilla.libsdl.org/show_bug.cgi?id=1859 .

关于x11 - XSync - 丢弃参数是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14532065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com