关于UIView
,Apple 对线程建议有一些评论:
对应用程序用户界面的操作必须在主线程上进行。因此,您应该始终从应用程序主线程中运行的代码调用 UIView 类的方法。唯一可能不是绝对必要的情况是在创建视图对象本身时,但所有其他操作都应在主线程上进行。
在后台线程中释放 UIView 对象通常(不)安全吗?无论哪种情况,我都在寻找一些支持文档。
关于UIView
,Apple 对线程建议有一些评论:
对应用程序用户界面的操作必须在主线程上进行。因此,您应该始终从应用程序主线程中运行的代码调用 UIView 类的方法。唯一可能不是绝对必要的情况是在创建视图对象本身时,但所有其他操作都应在主线程上进行。
在后台线程中释放 UIView 对象通常(不)安全吗?无论哪种情况,我都在寻找一些支持文档。
是的,UIKit 对象需要在主线程上释放。在后台线程中释放 UIView 对象是不安全的。有关更多详细信息,请参见此处。
iOS Developer Library 文档链接到NSView Restrictions部分,所以我猜它们也适用于 UIView。
NSView 限制
NSView 类通常不是线程安全的。您应该仅从应用程序的主线程创建、销毁、调整大小、移动和对 NSView 对象执行其他操作。只要将绘图调用与 lockFocusIfCanDraw 和 unlockFocus 调用括起来,从辅助线程绘图就是线程安全的。
我希望这有帮助。