В чем разница между этим:
[[NSOperationQueue mainQueue] addOperationWithBlock:^{ [self doSomthing:object]; }];
и этим:
[self performSelectorOnMainThread:@selector(doSomething:) withObject:object waitUntilDone:NO]