发明名称 | 把无用方法收集到垃圾箱中的方法和系统 | ||
摘要 | 一种在使用虚拟机时提高数据处理应用程序的有效性的方法,其中该程序包括许多个方法,即许多个程序段,它们都存储在所用计算机的存储器中,和其中该程序利用了垃圾收集过程。该发明的特征在于,在第1步骤中,分析所有线程堆栈,以确定哪些方法是所述线程堆栈需要的方法;在第2步骤中,更新每一个需要的方法,其中正在调用更新以前的方法被调用更新后的方法所取代;在第3步骤中,删除所有未更新的方法并释放由所述未更新的方法所占用的存储空间。 | ||
申请公布号 | CN100382047C | 申请公布日期 | 2008.04.16 |
申请号 | CN00816416.9 | 申请日期 | 2000.10.27 |
申请人 | BEA系统公司 | 发明人 | 乔基姆·达尔斯泰特 |
分类号 | G06F12/02(2006.01) | 主分类号 | G06F12/02(2006.01) |
代理机构 | 北京市柳沈律师事务所 | 代理人 | 马莹;邵亚丽 |
主权项 | 1.一种在使用虚拟机时提高数据处理应用程序的有效性的方法,其中该程序包括许多个方法,它们都存储在所用计算机的存储器中,和其中该程序利用了垃圾收集过程,其特征在于,在第1步骤中,分析所有线程堆栈,以确定哪些方法被所述线程使用;在第2步骤中,通过创建每个所述使用的方法的拷贝,更新每个所述使用的方法,其中,正在调用更新以前的方法被调用更新后的方法所取代;和在第3步骤中,删除所有旧的方法并释放由所述旧的方法所占用的存储空间;其中在所述第1步骤中,当程序正在运行时,让线程一次一个地被暂停;传输由所述暂停的线程使用的方法到一列表;重新开始被暂停的线程;在所述第2步骤中,更新和存储所述列表中的方法;在所述第3步骤中,当所有线程的第1和第2步骤的处理完成时,让所有线程同时停止;以及删除所有旧的方法,并用更新的方法重新开始这些线程。 | ||
地址 | 美国加利福尼亚州 |