2011-09-21 42 views
0

我已经使用install4j为我的Java应用程序创建了一个安装程序。它运行在JDK1.6上,并使用Jetty作为Web服务器,并使用struts2作为MVC。该应用程序安装得很好,并正确创建一个exe文件。当我通过双击exe文件启动应用程序时,应用程序启动并启动并且所有功能都正确运行。 从启动应用程序大约30到40秒后,我注意到exe程序正在吃掉几乎所有的CPU功率(高达99%)。这使得在我的电脑上使用任何其他应用程序非常困难。 这只发生在Windows XP和Vista上。但是,当我在Windows 7上尝试它时,我不会遇到这个问题。 Windows XP和Vista机器规格非常好(带有4 GB RAM的3GHZ处理器)。使用install4j创建的EXE在启动后30-40秒后耗尽所有CPU

我真的不知道为什么在启动应用程序30到40秒后,exe会占用所有的CPU。没有线程,没有后台工作人员,根本没有逻辑处理。它是一个非常简单的MVC应用程序。事实上,我只是尝试打开应用程序,然后等待30到40秒(不使用它),CPU使用率高。

在任务管理器中,我发现创建了2个处理器,一个用于exe,另一个用于启动应用程序时由exe创建的Java处理器。只有exe进程正在使用99%的CPU,而Java进程处于空闲状态。

任何一张脸都有类似的东西?任何帮助表示赞赏。 谢谢,

+0

嗨Motokazi,我就看你如何为你的项目配置install4j真正感兴趣,有没有可以分享的配置机会吗? – Armand

回答

0

您是否尝试过使用VisualVM查看Java进程?它是任何JDK安装的一部分。它可以绑定到任何正在运行的Java程序中,并且非常全面地对它进行采样/配置

VisualVM

+0

其实我没有那样做。我不知道VisualVM工具。我会尝试一下,发布我的发现,但谢谢指针。 – Motokazi