猿问

大中央调度(GCD)与performSelector-需要更好的解释

我在我的应用程序中同时使用了GCD和performSelectorOnMainThread:waitUntilDone,并且倾向于将它们视为可互换的-也就是说,performSelectorOnMainThread:waitUntilDone是GCD C语法的Obj-C包装器。我一直认为这两个命令是等效的:


dispatch_sync(dispatch_get_main_queue(), ^{ [self doit:YES]; });



[self performSelectorOnMainThread:@selector(doit:) withObject:YES waitUntilDone:YES];

我不正确吗?也就是说,performSelector *命令与GCD命令有区别吗?我已经阅读了很多有关它们的文档,但是还没有找到确切的答案。


胡说叔叔
浏览 648回答 3
3回答
随时随地看视频慕课网APP
我要回答