Если я назначу что-то вроде
self.connection = [NSURLConnection connectionWithRequest: запрос делегата: self];
Теперь, если выполните следующее:
self.connection =nil;
это будет утечка памяти?Если нет, то почему?
Это не будет утечка памяти.Это из-за того, как реализуются объективные свойства c.Я предполагаю, что вы используете retain в декларации собственности.Теперь, когда вы делаете self.connection, будет вызван следующий метод.Так как ваше соединение сначала сбрасывается, а затем выполняется операция сохранения в ноль, которая просто вернет ноль.Таким образом, утечка памяти не произойдет.
-(void)setConnection:(NSURLConnection *)newConnection { if (connection != newConnection) { [connection release]; connection = [newConnection retain]; } }
Подробности можно найти здесь http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProperties.html