Если вы попытаетесь сформировать слабую ссылку на объект, который не поддерживает слабые ссылки, программа должна немедленно умереть. Это упомянуто в документах Objective-C глубины видео от WWDC 2011 . Поэтому вы должны немедленно узнать, найдете ли вы класс, который их не поддерживает.
Я почти уверен, что отсутствие упоминания в Переходе к заметкам о выпуске ARC означает, что все классы UIKit
безопасны. Я не уверен, относится ли предупреждение о AV Foundation
классах к iOS или нет. Я протестировал создание слабой ссылки на AVCaptureSession
как на iOS 5, так и на Lion, и ни одна из них не вылетела. Я протестировал создание слабой ссылки на NSWindow
на Lion, и он вылетел с сообщением cannot form weak reference to instance (0x102232ef0) of class NSWindow
.