草庐IT

jvm-arguments

全部标签

java - JVM 内存分配

您好,我有一个关于继承的问题。在Java中,子类对象内部有其父类(superclass)的对象?当JVM为子类对象分配空间时,为父类(superclass)字段/方法分配空间?谢谢。例子:classBar{publicStringfield;publicBar(){this.field="Bar";}}classFooextendsBar{publicStringfield;publicFoo(){this.field="Foo";}publicvoidprintFields(){System.out.println("Base:"+super.field);System.out.pr

java - JVM - 在正在运行的(非检测的) session 中获取类的实例

我需要通过在给定类的实例上调用特定方法来停止进程。这个进程已经运行了一天,如果我硬关闭它,我会失去很多工作。由于API中的一个错误,GUI连接错误并且没有调用正确的停止函数。我附加了一个交互式Java(Scala)解释器,所以如果我能掌握流程的实例,我就可以轻松调用正确的方法。我不在调试session中,没有com.sun.jdi。我可以在堆栈跟踪转储中看到该实例,但StackTraceElement不包含实际实例,仅包含类和行号。在没有特定检测的情况下,在运行的session中是否有任何方法可以通过它的类,通过线程转储来获取该实例? 最佳答案

java - jvm如何优化循环代码?

有一种方法可以从文本中搜索子串(使用暴力算法,请忽略空指针)publicstaticintforceSearch(Stringtext,Stringpattern){intpatternLength=pattern.length();inttextLength=text.length();for(inti=0,n=textLength-patternLength;i奇怪!使用相同的算法,但下面的代码更快!!!publicstaticintforceSearch(Stringtext,Stringpattern){intpatternLength=pattern.length();int

java - JVM 崩溃时 GC 日志被覆盖

我正在针对G1GC调整我们的产品,作为该测试的一部分,我的SparkWorker经常遇到段错误,这当然会导致JVM崩溃。发生这种情况时,SparkWorker/ExecutorJVM会自动重启,然后覆盖为之前的ExecutorJVM写入的GC日志。老实说,我不太确定ExecutorJVM如何自行重启的机制,但我通过init.d启动了SparkDriver服务,它又调用了一个bash脚本。我确实在该脚本中使用了一个时间戳,该时间戳附加到GC日志文件名中:today=$(date+%Y%m%dT%H%M%S%3N)SPARK_HEAP_DUMP="-XX:+HeapDumpOnOutOfM

java - rt.jar 的内容是否会在不同的 JVM 供应商之间发生变化?

我继承了对直接使用rt.jar中的**.internal.**apachexerces类的遗留Web应用程序的支持。我认为历史是这段代码(回到java1.4)曾经明确地使用xerces并且在移动到java5时的某个时刻放弃了xercesjar的使用并且这些类从rt.jar中引用为内部等价物。我正在尝试了解在各种Web容器(例如Websphere与Tomcat等)上运行该项目的影响。rt.jar是由SUN还是JVM/JRE供应商提供的?其他供应商是否继续在内部使用xerces还是有其他XML实现?在某些时候(资源允许)需要更改此代码以使用标准的JavaAPI,我想了解这可能是一个多大的问

java - JVM 在 gc 期间抛出 OutOfMemory,尽管还有足够的内存

我将我的java应用程序配置为使用5G内存。我突然遇到了OutOfMemory。我检查了gc日志,发现剩余内存充足:年轻代占用4%分配空间,tenure代占用5%,perm代占用43%。我很困惑为什么JVM在gc时间抛出OutOfMemory。有谁知道为什么会这样?非常感谢您的帮助。JVM内存和gc设置:-server-Xms5g-Xmx5g-Xss256k-XX:NewSize=2g-XX:MaxNewSize=2g-XX:+UseParallelOldGC-XX:+UseTLAB-XX:SurvivorRatio=8-XX:TargetSurvivorRatio=90-XX:+Di

java - Eclipse IDE 无法启动,JVM 已终止。退出代码=-1

我遇到了EclipseIDE无法启动的问题,并显示以下错误消息:“JVM已终止。退出代码=-1”经过一番谷歌搜索后,我半无意间找到了解决方案,并且能够让IDE正确启动。我所做的是将eclipse.ini中的-XmxJVM参数设置为低于指定的默认值(-Xmx512m)的值。虽然我能够让IDE启动,但我很好奇它为什么会发生以及为什么这个解决方案有效。以下是一些环境信息:EclipseIDE:eclipse-rcp-galileo-SR1-win32JVM:Java(TM)SE运行时环境(build1.6.0_10-b33)物理内存:2GB启动时的可用内存>1GB。最初,我将该值更改为256

java - 计算 jvm 堆大小以托管 Web 应用程序

我想在他们提供32、64、128、256MB计划的私有(private)JVM上托管Web应用程序。我的Web应用程序使用Spring。我为每个登录的用户session存储一些对象。我的问题是:我如何分析我的网络应用程序以查看它需要多少堆大小以便我可以选择一个计划?我如何模拟数百名用户同时登录?我正在使用Netbeans6.7Java1.6Tomcat6.0.18开发应用程序谢谢。 最佳答案 要进行分析,您可以使用VisualVM,YourKit等要模拟负载,您可以使用ApacheJMeter

c# - CLR/JVM 是否为所有正在运行的 .net/java 应用程序保留一个实习生池?

以下摘自MSDN:Thecommonlanguageruntimeconservesstringstoragebymaintainingatable,calledtheinternpool,thatcontainsasinglereferencetoeachuniqueliteralstringdeclaredorcreatedprogrammaticallyinyourprogram.Consequently,aninstanceofaliteralstringwithaparticularvalueonlyexistsonceinthesystem.Forexample,ifyou

java - eclipse 警告 : unchecked conversion vs redundant specification of type arguments

我最近刚从JDK1.6切换到JDK1.7。我有这个代码:SomeClasssomeVariable=newSomeClass(createSomeObject());现在我收到警告:Redundantspecificationoftypearguments如果我使用快速修复Eclipse给我这个:SomeClasssomeVariable=newSomeClass(createSomeObject());结果是Gotanexception-expectingEOF,found'xyz'xyz是我的代码文本中的下一项。当我删除尖括号时,我收到此警告:SomeClassisarawtype