2013-04-02 80 views
1

對於UIView,蘋果對線程建議一些意見:UIKit對象是否需要在主線程上解除分配?

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

操作,以應用程序的用戶界面必須在 主線程上發生。因此,您應該始終從應用程序主線程中運行的代碼調用UIView類的方法。 只有當這個對象本身創建視圖 時,可能並不是絕對必要的,但是所有其他操作都應該發生在主線程上。

在後臺線程中釋放一個UIView對象通常(不)安全嗎?無論在哪種情況下,我都在尋找一些支持文檔。

回答

1

是的,UIKit對象需要在主線程上釋放。在後臺線程中釋放UIView對象是不安全的。有關更多詳情,請參閱here

0

iOS開發人員庫文檔鏈接到NSView限制部分,所以我想他們也適用於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

我希望這有助於。

相關問題