草庐IT

VM_Operation

全部标签

Java VM 无法识别 -XX :G1YoungGenSize?

我在JDK1.7.0中使用G1垃圾收集器,但VM无法识别G1YoungGenSize选项。具体来说,当我运行时:java-XX:+UnlockExperimentalVMOptions-XX:+UseG1GC-XX:G1YoungGenSize=512m...我收到以下错误:UnrecognizedVMoption'G1YoungGenSize=512m'Error:CouldnotcreatetheJavaVirtualMachine.Error:Afatalexceptionhasoccurred.Programwillexit.我也尝试过在G1YoungGenSize之前加上一个

java - Visual VM 中的 RMI TCP Accept、Attach Listener 和 Signal Dispatcher 是什么?

我正在使用VisualVM分析一个程序。我的程序运行了一段时间,最后使用XChart弹出了一些图。显示结果。图表显示后,我注意到VisualVM中有一些Activity线程“RMITCPAccept”、“AttachListener”和“SignalDispatcher”。这些线程是什么?我假设它们仅与VisualVM有关。我说的对吗?? 最佳答案 这篇文章粗略地回答了https://stackoverflow.com/a/7698906/573057如你所想;Attach、Signal和RMITCPAccept用于通过jConso

Java HotSpot(TM) 64 位服务器 VM 警告、CentOS、SmartGit、SmartSvn

在运行SmartGit提供的shell脚本时,JavaHotSpot(TM)64-BitServerVMwarning:Youhaveloadedlibrary/home/User/.smartgit/6/jna-tmp/com/sun/jna/linux-i386/libjnidispatch.sowhichmighthavedisabledstackguard.TheVMwilltrytofixthestackguardnow.It'shighlyrecommendedthatyoufixthelibrarywith'execstack-c',orlinkitwith'-znoex

java - 哪些 VM 或 GC 支持 JNI 固定?

GetArrayElements函数族被记录为复制数组或将它们固定到位(并且这样做可以防止压缩垃圾收集器移动它们)。它被记录为比GetPrimitiveArrayCritical更安全、限制更少的替代方案.但是,我想知道哪些VM和/或垃圾收集器(如果有的话)实际固定数组而不是复制它们。 最佳答案 较旧的IBMJVM已固定(1.4及更早版本-即:不是当前的IBMJ9JVM),但从那时起,它们就没有了。一般来说,JVM不喜欢固定,因为它确实会扰乱复制垃圾收集器,而这正是当今大多数生产JVM所做的事情。我不是100%最新的(即:最新的Ja

java - 避免 VM 启动时使用的类使用 lambda 和流

通过java.lang.module我在类文档中阅读了以下内容:@implNote...isusedatVMstartupandsodeliberatelyavoidsusinglambdaandstreamusagesincodepathsusedduringstartup.使用此处避免的lambda和流的原因是什么?它们可能产生的影响是什么?插图将有助于更好地理解,但不是在这里寻求意见。 最佳答案 不依赖lambda和流(广泛使用lambda)有助于避免在VMBootstrap中进行冗余工作。这反过来又减少了启动时间和内存占用。

java - IntelliJ 调试 : Suspend whole VM then step on single thread

我正在调试一个有很多线程的应用程序。我的断点设置为暂停整个VM。当线程遇到其中一个断点时,我想使用StepOver。但这似乎会恢复整个虚拟机,直到该步骤完成。如果我可以只步进遇到断点的单个线程,那将非常有帮助。在IntelliJ11.1/Java6中有什么方法可以做到这一点吗?(希望我没有遗漏一些明显的东西......) 最佳答案 此功能已在IntelliJ16中添加(他的回答中引用的CrazyCoder问题已解决)更多细节在这里:https://blog.jetbrains.com/idea/2016/02/intellij-id

java - String.hashCode() 是否可以跨 VM、JDK 和操作系统移植?

最近出现了一个有趣的问题。我们遇到了一些使用hashCode()作为MD5加密盐源的代码,但这引发了一个问题:hashCode()是否会为同一对象返回相同的值在不同的虚拟机、不同的JDK版本和操作系统上?即使不能保证,到目前为止它是否有任何变化?编辑:我的意思是String.hashCode()而不是更通用的Object.hashCode(),后者当然可以被覆盖。 最佳答案 没有。来自http://tecfa.unige.ch/guides/java/langspec-1.0/javalang.doc1.html:Thegenera

java - 如何获取正在运行的 Java VM 的名称?

如何找到当前运行的java虚拟机名称?我想从javaAPI获取它。谢谢 最佳答案 由于您没有真正指定要查找的内容,请查看这些系统属性:“java.vm.name”“java.home”“java.version”“java.vendor”“java.specification.vendor”像这样:System.out.println(System.getProperty("java.vm.name"));System.out.println(System.getProperty("java.home"));System.out.p

java - 最佳(scala 和其他针对 java vm 的语言)优化

我只是在阅读有关genericsspecialization的scala实现的信息,他们通过此功能实现的速度提升确实引起了我的注意。我想知道还有哪些其他功能具有针对javavm的语言实现,实际上使它们的性能比java更好?我知道生成的代码离java越远,它的性能下降得越远。所以我真的很想知道语言还可以实现哪些其他功能来在Java中实现更好的性能。请不要回答这个谈论scala在java之上的非常好的特性的问题,我只是在谈论性能。此外,如果您有尚未实现的建议,请务必回答!谢谢! 最佳答案 Scala做supporttail-callop

Java HotSpot(TM) 64 位服务器 VM 警告无法打开文件 logs/gc.log,因为没有这样的文件或目录

当我尝试运行时出现此错误RACK_ENV=testberailstesttest/system/service_provider_map_test.rb—seed48088JavaHotSpot(TM)64-BitServerVMwarning:Cannotopenfilelogs/gc.logduetoNosuchfileordirectory然后测试因这个错误而超时Timeoutwhilewaitingforclusterstatus[green]and[1]nodes/Users/patrickward/.rbenv/versions/2.4.1/lib/ruby/gems/2.