Hi All Does anyone can know what the difference between [NSOperationQueue currentQueue] and performSelectorOnMainThread, If I do some work use operation on [NSOperationQueue mainQueue], the UI will not hang up, but if i use performSelectorOnMainThread the UI will hang up
- (void) doTheThing { //Do do some work about 9~20 s } [self showIndicatorWithString:NSLocalizedString(@"Doing...", nil)]; // is a MBProgreessHUD, add a view then use a animation to show //Case 4 not hang up, HUD show and can refresh, but the screen cannot response user's touch NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(doTheThing) object:nil]; [[NSOperationQueue mainQueue] addOperation:operation]; //Case 2 hang up, HUD not show //[self doTheThing]; //Case 3 hang up, HUD not show //[self performSelectorOnMainThread:@selector(doTheThing) withObject:nil waitUntilDone:YES]; //Case 4 not hang up, HUD show and can refresh, but the screen cannot response user's touch NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(doTheThing) object:nil]; [[NSOperationQueue currentQueue] addOperation:operation]; -- Fykec Yin _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com