Завершение моего первого проекта с использованием ARC.Вообразите мое удивление тогда, чтобы обнаружить утечку почти немедленно.Есть ли у кого-нибудь понимание того, почему следующий код может вытекать с идентификатором символа: 'dispatch_queue_create':
При этом используется слишком упрощенный обработчик TWRequest в iOS5 с ARC:
- (void)loadSomeTweets
{
NSString *queryString = [NSString stringWithString:@"http://search.twitter.com/search.json?"];
NSDictionary *parameters = [NSDictionary dictionaryWithObjectsAndKeys:@"%23WatchingTheVoice", @"q", nil];
NSURL *targetedSearchURL = [NSURL URLWithString:queryString];
TWRequest *targetedRequest = [[TWRequest alloc] initWithURL:targetedSearchURL
parameters:parameters
requestMethod:TWRequestMethodGET];
[targetedRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
{
//Do something
}];
}
Почему эта утечка?Стек вызовов подразумевает executeRequestWithHandler, но утечка происходит независимо от того, что я делаю в обработчике обратного вызова, даже пустая реализация (как показано здесь) создает утечку.Утечка происходит на симуляторе и устройствах.