在我的应用程序中,我很少有方法相互调用来解析 XML 下载的提要,我需要在后台进行所有解析NSOperation
,NSOperationQueue
目前它正在主线程中执行并冻结整个应用程序。
我的应用程序逻辑如下所示:
-(IBAction) callSync{
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:APIURL]];
AFURLConnectionOperation *operation = [[AFURLConnectionOperation alloc] initWithRequest:request];
operation.completionBlock = ^{
//1
[self startParsing:operation.responseString];
};
[operation start];
}
//2
-(void)startParsing:(NSString*)str
{
//some logic
[self traverseXML:str];//Call traverseXML
}
//3
- (void) traverseXML:(TBXMLElement *)element {
//Some logic
[self saveFile:localWS];//CallsaveFile
}
//4
-(void) saveFile : (WorkFile *)_workFile{
//Some logic
}
我的问题是:我是否应该NSOperation
为每个方法子类化一个类,我的意思是一个 for startParsing
,一个 fortraverseXML
等等?或者仅仅创建一个NSOperation
子类并在其中完成所有实现方法就足够了。