Я использую диспетчер объектов RESTKIT для получения информации с моего сервера. Фрагмент моего кода реализации выглядит следующим образом:
-(void)getObjects
{
//Instantiate the RestKit Object Manager
RKObjectManager *sharedManager = [RKObjectManager sharedManager];
//show the spinner
[self showLoading];
//call server with the resourcepath
[sharedManager loadObjectsAtResourcePath:self.resourcePath delegate:self];
}
- (void)objectLoader:(RKObjectLoader*)objectLoader didLoadObjects:(NSArray*)objects
{
// handling in scenarios of empty arrays
if ( [objects count]==0 ){
[self hideLoading];
if (emptyHandler){
emptyHandler();
}else{
[self standardEmptyHandling];
}
return;
}
// planned failure
if ( [[objects objectAtIndex:0] isKindOfClass:[Failure class]]){
NSAssert([objects count]==1,@"object returned is type failure, but there are more than one object in it");
failureObject=[objects objectAtIndex:0];
[self hideLoading];
[self standardErrorHandling];
return;
}
//return completion block to caller
completionHandler(objects);
}
Однако могут быть случаи, когда возникает ошибка сервера или ошибка достижимости, из-за чего процесс продолжает попытки в течение длительного времени, прежде чем завершиться (счетчик будет отображаться в течение длительного времени_.
Есть ли способ установить время ожидания в моей реализации, чтобы я мог предложить пользователю предупреждение, чтобы повторить попытку, если сервер, например, не отвечает в течение 20 секунд?
RKRequestQueue requestTimeout
? - person mja   schedule 10.10.2011