В контроллере представления у меня есть несколько методов с разными ASIFormDataRequests, которые имеют разные finSelectors. поэтому methodA -> finishselector (AFinished :), methodB -> finishselector (BFinished :) и methodC -> finishselector (CFinished:)
У меня есть 1 метод, который обрабатывает все запросы, как показано ниже:
-(void)sendRequest:(NSURL *)url withParams:(NSDictionary *)params andSelector:(NSString *)selector
{
NSString *jsonString = [params yajl_JSONString];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:jsonString forKey:@"json"];
[request setTimeOutSeconds:15];
[[self networkQueue] setDelegate:self];
[[self networkQueue] setRequestDidFinishSelector:NSSelectorFromString(selector)];
[[self networkQueue] setRequestDidFailSelector:@selector(asiRequestFailed:)];
[[self networkQueue] addOperation:request];
[[self networkQueue] go];
}
Я заметил, что когда я отправлял запросы на метод A-> B-> C и B заканчивал работу раньше, чем A, то BFinished: вызывался бы дважды, сначала с данными, соответствующими методу B, затем с данными, соответствующими методу A. Делает ли ASINetworkQueue только обрабатывать 1 отделкойВыберите за раз? мне нужно разделить сетевые очереди для каждого метода?
Спасибо