2015-08-19 5 views
-1

Когда я отправил 10000 запросов за одну секунду, Xcode показал, что в этой программе используется 300 МБ памяти между запросами. Даже после запроса он стоил 190 МБ и не уменьшался, я не знаю почему.Почему AFNetworking Употребляет столько памяти?

Это мой код. Простите мой английский.

NSOperationQueue *queue = [[NSOperationQueue alloc] init]; 
for (int i = 1; i <= 10000 ; i ++) { 
    NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc]initWithRequest:request]; 
    [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) { 
     NSLog(@"Success!"); 
    }failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
     NSLog(@"Error!%@",error); 
    }]; 
    [queue addOperation:operation]; 
    usleep(100); 
} 

ответ

1

10000 нет немного число.
Вы можете использовать обычную процедуру сокета, предназначенную для большого запроса, например, AsyncSelect, или Completion розетка ...

Смежные вопросы