我看到一個問題與RestKit的優秀的遠程請求將導致其他請求排隊和阻塞,直到前一個完成。我已經讀過RestKit默認AFNetworking的setMaxConcurrentOperationCount
值爲5,但我遇到阻塞只有一個未完成的請求。RestKit - 請求塊,直到上一個調用完成
RestKit的當前版本是否仍默認爲5,如果是這樣,可能會導致我缺少併發請求?
RestKit 0.20.3
請求
- (RKManagedObjectRequestOperation*) getUser {
RKObjectManager *objectManager = [RKObjectManager sharedManager];
NSDictionary *items = [objectManager.HTTPClient defaultHeaders];
NSString *auth = [items objectForKey:@"Authorization"];
if (auth == nil) {
NSLog(@"You must login first\n");
return nil;
}
auth = [auth stringByReplacingOccurrencesOfString:@"Bearer " withString:@""];
NSMutableString *path = [NSMutableString stringWithFormat:@"/users?accessToken=%@", auth];
return [[RKObjectManager sharedManager] appropriateObjectRequestOperationWithObject:nil method:RKRequestMethodGET path:path parameters:nil];
}
- (void) getUser:(void (^) (RKObjectRequestOperation *operation , RKMappingResult *mappingResult))success failure:(void (^) (RKObjectRequestOperation *operation , NSError *error))failure {
RKManagedObjectRequestOperation *requestOperation = [self getUser];
[requestOperation setCompletionBlockWithSuccess:success failure:failure];
[requestOperation start];
}
前者是在測試中使用的一個幫手,而後者實際上是由生產代碼調用。我沒有看到我的代碼中明確設置了隊列大小的地方。
具體說明您正在使用的版本號。你記錄了隊列的併發數嗎?此外,請顯示您正在使用的代碼,有時隊列大小明確設置爲1. – Wain
@Wain已更新。我不會在任何地方設置隊列大小,我只是製作一個標準的'''''''''''''''''''''''''適當的參數:'調用。 –