Вы должны release
объект NSURLConnection
в обратном вызове - (void)connectionDidFinishLoading:(NSURLConnection *)connection
, как указано в документации Apple, а не в другом месте:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
// Do whatever you want here
// Release the connection
[connection release];
}
Не выпускать его с autorelease
,как предложил Лу Франко.
Если это не проблема, то, возможно, вам придется реализовать все необходимые методы в классе делегата:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
Делегат удерживается NSURLConnection
, поэтому вам не нужно об этом беспокоиться.