【发布时间】:2011-10-06 18:23:27
【问题描述】:
我正在比较不同的编程语言和开发平台。 Objective-c 和其他语言的一个重要区别是它使用选择器、消息,所以每次都调用 objc_msgSend,跨越共享库的边界,因此引入了可测量的开销,加上 objc_msgSend 的更多开销(在缓存的情况下很少)内部运作,就像这里解释的那样: http://www.mulle-kybernetik.com/artikel/Optimization/opti-3.html 我不是专家,所以我必须相信这篇文章,在这个论坛上找到。 在 Apple 官方指南中,我发现“点语法”只是“语法糖”,即使用了相同的方法调用机制。 问题:我想知道,如果在类实例中执行纯调用,那么调用 objc_msgSend 将是一种浪费。也就是从同一个类实例的方法调用一个类实例的方法。 谢谢
【问题讨论】:
标签: objective-c methods overhead