用 Runtime Syp 调整 Eclipse 的启动性能,第 2 部分:成功的骗局
2009-12-13 00:00:00 来源:WEB开发网Runtime Spy 是 Eclipse.org 提供的核心工具 (Core Tools)之一,它是特别设计的一个透视图及一组视图,用于帮助您找到并诊断插件启动性能问题。其中的一个案例研究说明了Runtime Spy 如何用于提高 IBM WebSphere Studio Application Developer 的启动性能。上一篇文章,也就是 第1 部分,对 Runtime Spy 进行了介绍。
阅读完本系列文章的 第 1 部分 后,您应该已经对 Runtime Spy 如何来帮助您查找启动问题的位置有了大体的认识。让我们通过一些特定的例子来弄明白如何用它减少您的插件启动时间。为了让话题更有可读性,我们将探讨一些在 Runtime Spy 帮助下纠正的问题,这些问题的纠正是 IBM WebSphere Studio Application Developer 性能提高的一个方面。
注意:核心工具只能运行于 Eclipse 版本 2.x。在本文发表时,它们还不能运行于 Eclipse 3.0 驱动程序上;编号为 47518 的 bug 描述了这一问题。
帮助 Eclipse 快速启动
为提高一个基于 Eclipse 的应用程序的启动性能,一般来说有两个目标:
尽可能地延迟插件的激活。
在激活您的插件时将涉及到的工作量减到最少。
这两个目标共同的原则是 尽可能延迟代码的执行。您可以采用的一些方法:
不要加载您的插件
怎么办?首先,要遵循 Eclipse 本身的插件扩展的思想。不要忘记,很多 Eclipse 扩展点定义要求贡献者静态地声明足够的信息,以延迟代码的加载,直到需要执行被请求的动作时才加载。这是 Eclipse 体系结构的基本思想,在插件清单文件的声明中得到了体现。您自己的扩展点定义也应该采用这一方法。
减少插件初始化时加载的类的数量
最常出现问题的地方是 Plugin.startup 方法中的引用。很多插件重载这个方法以完成它们的初始化。理想的解决方法通常是,让您的插件延迟它的初始化,直到用户请求您的产品的某个特定的动作时再初始化。要不然,下一个最好的选择是最小化引用的类和插件的数量。在任何一种情况下,Runtime Spy 都可以指出哪里可能会占用太多的时间或者触发太多其他插件的激活。
更多精彩
赞助商链接