记录NSOperation用法.
NSOperation *operation = [NSInvocationOperation alloc] initWithTarget:self selector:@selector(run) object:nil];
[operation start];
NSBlockOperation *operation1 = [NSBlockOperation blockOperationWithBlock:^{
doSomeThing();
}]
[operation1 addExcutionBlock:^{
doSomeThing();
[NSThread sleepForTimeInterVal:2];
}]
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
queue.maxConcurrentOperationCount = 2; // 2~3
[queue addOperation:operation]; // auto-run
[queue setSuspended:YES];
[operation addDependency:operation]; // appliable on different queue
operation.completionBolck = ^{ };
网友评论