我在 NSObject.h 中发现了一个奇怪的关键字
- (oneway void)release;
我在网上搜索了一下,了解到它与异步消息传递有关,看起来和 Erlang 的消息传递很相似。
看来这可以做出很多有趣的事情。这个关键字有哪些好的用例?
最佳答案
oneway
与分布式对象 API 一起使用,它允许在不同线程或应用程序之间使用 Objective-C 对象。它告诉系统在方法返回之前它不应该阻塞调用线程。没有它,调用者将阻塞,即使方法的返回类型是 void。显然,它永远不会与 void 以外的任何东西一起使用,因为这样做意味着该方法返回了一些东西,但调用者没有得到它。
有关分布式对象的更多信息,请参阅 Cocoa Conceptual DistrObjects .
关于objective-c - Objective-C 中 `oneway void` 的用例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5494981/