消息的概念通常与异步调用相关。 Objective C 也是这样吗?即,当调用者向被调用者发送消息以执行其上的方法时,调用者是立即继续还是被阻塞,直到被调用者完成执行所请求的方法?
最佳答案
肯定是被屏蔽了。因为这些消息实际上是用纯 C 语言翻译的。
[myObj myMethod];
变成了
objc_msgSend(myObj, @selector(myMethod));
在运行时。
但是,某些方法被实现为异步的。请参阅 -[NSTask launch]
、-[NSThread start]
等。
关于objective-c - Objective C 中发送消息实际上是异步的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10162019/