所有 UIKit 绘图或 AppKit 绘图都在主线程上完成是否有原因?
问问题
303 次
2 回答
5
这是所有 GUI 绘图在单个线程上完成的主要模式,访问屏幕以添加元素和绘图不是多线程过程
想象一下,你有 10 个线程,每个线程都试图在屏幕上绘制和/或移动元素,这会产生不确定的错误和问题,这些问题很难处理和/或发现
还在这里阅读更多为什么大多数 UI 框架都是单线程的?
于 2012-06-08T11:37:19.830 回答
2
“因为多线程绘图很快变得太复杂/令人困惑”只是答案的一半。
多线程 UI 管理的另一个主要障碍是事件处理。具体来说,将事件处理混合到并发绘图中。您必须以某种方式将绘图与猴子在屏幕/键盘/鼠标上的混乱混合在一起,同时有效地保持事务完整性的概念。
如果没有并发,这已经很难了。
于 2012-06-08T14:43:56.583 回答