Tag: jvm

为什么你会执行finalize()?

我已经阅读了很多关于finalize()的新手java问题,并且发现有一种令人困惑的理解,即没有人真正明白finalize()是清理资源的不可靠方法。 我看到有人评论说他们使用它来清理连接,这真的很可怕,因为唯一能够保证Connectionclosures的唯一方法是最后实现try(catch)。 我没有在CS学习,但是我已经在Java专业编程了近十年了,我从来没有见过任何人在生产系统中实现finalize()。 这并不意味着它没有用处,或者我曾经工作过的人一直在做正确的事情。 所以我的问题是,有什么用例来实现finalize(),不能通过语言中的另一个进程或语法更可靠地处理? 请提供具体的场景或者你的经验,简单的重复一下Java的教科书,或者敲定用途是不够的,而不是这个问题的意图。

无法为对象堆预留足够的空间

当我运行时,每次我尝试运行该程序时,都会重复出现以下exception。 VM初始化期间发生错误 无法为对象堆预留足够的空间 无法创buildJava虚拟机。 我试图增加我的虚拟内存(页面大小)和内存大小,但无济于事。 谁能告诉我如何消除这个错误?

我如何增加JVM内存?

嗨,我想知道我可以增加JVM的内存取决于我的应用程序。如果是的话我怎样才能增加JVM内存? 我怎么知道JVM的大小?

获取当前在Java中运行的所有线程列表

有什么办法可以获得当前JVM中所有正在运行的线程的列表(包括未由我的类启动的线程)? 是否也可以获得列表中的所有线程的线程和类对象? 我希望能够通过代码来做到这一点。

“java -server”和“java -client”之间的真正区别?

“java -server”和“java -client”之间有没有实际的区别? 我只能在Sun的网站上find一个模糊的“服务器启动较慢但运行速度更快”。 真正的区别是什么? (目前使用JDK 1.6.0_07)

启动JVM时,Xms和Xmx参数是什么?

请解释在JVM中使用Xms和Xmx参数。 他们的默认值是什么?

如何处理“java.lang.OutOfMemoryError:Java堆空间”错误(64MB堆大小)

我正在Java 5上编写客户端Swing应用程序(graphics字体devise器)。 最近,我正在运行java.lang.OutOfMemoryError: Java heap space错误,因为我不是保守的内存使用情况。 用户可以打开无限数量的文件,程序将打开的对象保存在内存中。 经过一个快速的研究,我发现5.0 Java虚拟机中的人机工程学和其他人在Windows机器上的JVM默认最大堆大小为64MB 。 鉴于这种情况,我该如何处理这个约束呢? 我可以使用java的命令行选项来增加最大堆大小 ,但是这需要找出可用的RAM并编写一些启动程序或脚本。 此外,增加一些有限的最大值不会最终摆脱这个问题。 我可以重写一些我的代码来经常保存对象到文件系统(使用数据库是一样的)来释放内存。 它可以工作,但也可能是很多工作。 如果你能指出我的细节以上的想法或像自动虚拟内存一样的select,dynamic扩展堆大小 ,这将是伟大的。

Eclipse的最佳JVM设置是什么?

运行Eclipse的最佳JVM设置是什么?

如何修复java.lang.UnsupportedClassVersionError:不支持的major.minor版本

我正在尝试使用Notepad ++作为我的所有function于一身的工具编辑,运行,编译等。 我已经安装了JRE ,并且已经将pathvariables设置为… / bin目录。 当我在Notepad ++中运行我的“Hello world”时,出现以下消息: java.lang.UnsupportedClassVersionError: test_hello_world : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) ………………………………….. 我认为这里的问题是关于版本的; 某些版本的Java可能是旧的或太新的。 我该如何解决? 我应该安装JDK,并将我的pathvariables设置为JDK而不是JRE? JRE或JDK中的PATHvariables有什么区别?

我如何在Java中编写正确的微基准testing?

你如何在Java中编写(并运行)一个正确的微基准testing? 我在这里寻找代码示例和评论,说明各种要考虑的事情。 示例:基准测量应该是时间/迭代还是迭代/时间,为什么? 相关: 秒表基准testing是否可以接受?