参考文献说:
“你应该只从应用程序的主线程调用此函数。”
但我想从单独的线程获取当前的图形上下文。你怎么看?我能做些什么来达到这个目标?
编辑: 谢谢大家的答案。我不知道目前哪个对我有好处,但非常感谢你。
答案 0 :(得分:3)
永远不要从主线程以外的任何东西画到屏幕!图形芯片是单线程的,因此如果不遵守该规则,可能会导致各种竞争条件。
您可以绘制到背景NSImage,然后在完成后通知主线程并更新屏幕。
答案 1 :(得分:1)
如果要从其他线程绘制,可以创建自己的CGBitmapContext或使用CATiledLayer。
答案 2 :(得分:0)
我会说重构你的逻辑以符合引用的建议。
一般来说,你应该和不应该做的事情是准确的。
为什么要从不同的线程访问它?