2010-02-27 22 views

回答

1

问题是applet通常作为嵌入在浏览器中的JVM中的线程运行。虽然您可以调整Java线程的优先级,但无法在其上放置CPU上限。事实上,我认为你甚至可以用操作系统的本地线程设置CPU上限。在UNIX和类UNIX操作系统的情况下,CPU使用限制和其他限制是以每个进程为基础实现的。

+0

6u10的PlugIn2使用浏览器外的JVM进程来运行applet。在某些平台上,线程可能会被单独考虑用于调度。 Java线程优先级有一个上限(6),但映射到本地线程时通常会被忽略(根本不记得平台和版本的细节)。 – 2010-02-27 05:12:47

+0

但是你说的是线程的优先级上限,而不是它可以使用的CPU数量。 – 2010-02-27 10:39:50

2

小应用程序通常以低于标准应用程序的特权运行,但不应该有CPU上限。有报道称,过度使用CPU会导致applets崩溃浏览器,而不是将它们分类为需要处理的安全缺陷,它们只是被标记为麻烦。这就是说,applets运行在各种环境中,有时几乎没有一致性(这就是为什么它们有问题,以及为什么Java Web Start是推荐的选择)。很可能是某些小应用程序环境对小应用程序施加了CPU限制等。