因为GUI不是用户代码“画出来”的,而是窗口管理器根据用户代码的请求,加上自行的判断来绘制的。窗口管理器独占对屏幕像素的控制权,并视情况拒绝或无视用户代码的请求。同时,窗口管理器需要绘制应用局部细节的时候,会发消息给客户代码要求补充细节数据
由于用户程序需要响应窗口管理器的数据要求(一般来说,不及时响应的话窗口管理器就把未知细节涂白),因此用户程序必须要有一个IPC响应端口,而绝大多数OS将其设计成消息队列这种IPC作者:李遥
链接:https://www.zhihu.com/question/26805116/answer/72622192
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
而基于事件回调的方式,回调函数结束后程序的控制权可以快速回到 UI 框架。