通过早期调用预加载方法调度缓存?

时间:2011-12-12 19:33:15

标签: jvm dynamic-languages objective-c-runtime dynamic-dispatch rubinius

缓存是VM用于使动态方法调度与基于静态“v-table”的方法查找相媲美的常用策略。我们是否可以利用这个来智能地“预调用”我们期望应用程序创建的各种对象上的方法,希望当程序在其“正常”执行流程中实际使用该方法时,我们将避免缓存未命中?是否有任何语言的虚拟机可以鼓励这种做法或以某种方式更容易?当程序没有做太多工作时,VM自身可以自动执行此过程吗?

1 个答案:

答案 0 :(得分:1)

我认为JDK 1.7的MethodHandle就是答案。请查看此主题MethodHandle - What is it all about?