1

关于UIView,Apple 对线程建议有一些评论:

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/UIView/UIView.html#//apple_ref/doc/uid/TP40006816-CH3-SW147

对应用程序用户界面的操作必须在主线程上进行。因此,您应该始终从应用程序主线程中运行的代码调用 UIView 类的方法。唯一可能不是绝对必要的情况是在创建视图对象本身时,但所有其他操作都应在主线程上进行。

在后台线程中释放 UIView 对象通常(不)安全吗?无论哪种情况,我都在寻找一些支持文档。

4

2 回答 2

1

是的,UIKit 对象需要在主线程上释放。在后台线程中释放 UIView 对象是不安全的。有关更多详细信息,请参见此处

于 2014-06-25T16:37:24.690 回答
0

iOS Developer Library 文档链接到NSView Restrictions部分,所以我猜它们也适用于 UIView。

NSView 限制

NSView 类通常不是线程安全的。您应该仅从应用程序的主线程创建、销毁、调整大小、移动和对 NSView 对象执行其他操作。只要将绘图调用与 lockFocusIfCanDraw 和 unlockFocus 调用括起来,从辅助线程绘图就是线程安全的。

来源: https ://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/Multithreading/ThreadSafetySummary/ThreadSafetySummary.html#//apple_ref/doc/uid/10000057i-CH12-123427

我希望这有帮助。

于 2014-02-16T16:52:22.120 回答