0

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

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

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

有人面对类似的事情吗?任何帮助表示赞赏。谢谢,

4

1 回答 1

0

您是否尝试过使用 VisualVM 查看 Java 进程?它是任何 JDK 安装的一部分。它可以连接到任何正在运行的 Java 程序并对其进行非常彻底的采样/分析。

视觉虚拟机

于 2011-09-21T22:42:26.473 回答