Tag: nsblockoperation

学习NSBlockOperation

我是一个块的粉丝,但没有使用它们的并发性。 经过一番谷歌search之后,我把这个想法拼凑起来,把我在一个地方学到的所有东西都隐藏起来。 目标是在后台执行一个块,当它完成时,执行另一个块(如UIViewanimation)… – (NSOperation *)executeBlock:(void (^)(void))block completion:(void (^)(BOOL finished))completion { NSOperation *blockOperation = [NSBlockOperation blockOperationWithBlock:block]; NSOperation *completionOperation = [NSBlockOperation blockOperationWithBlock:^{ completion(blockOperation.isFinished); }]; [completionOperation addDependency:blockOperation]; [[NSOperationQueue mainQueue] addOperation:completionOperation]; NSOperationQueue *backgroundOperationQueue = [[NSOperationQueue alloc] init]; [backgroundOperationQueue addOperation:blockOperation]; return blockOperation; } – (void)testIt { NSMutableString *string = [NSMutableString stringWithString:@"tea"]; NSString *otherString = @"for"; NSOperation *operation = [self […]