草庐IT

jvm-options

全部标签

java - 在单个表达式中解包 Guava Optional

作为也在GWT工作的Scala开发人员,欢迎补充OptionalGuava。我们最常见的用例之一Optional是从方法返回可选值时(如What'sthepointofGuava'sOptionalclass的答案所建议的那样。在scala中,我经常这样写代码:defsomeExpensiveOperation(params:Type):Option[ResultType]=...someExpensiveOperation(params).foreach({val=>doSomethingWithVal(val)})Guava的选项似乎不允许任何比这样更优雅的东西:Optionalo

java - 空无限循环和 GC (JVM)。请说明效果

我的空无限循环publicstaticvoidmain(String[]args){while(true){}}并在JavaVisualVM中进行分析(图片)如您所见,我不创建对象。为什么要换一个堆?请解释一下效果。为什么? 最佳答案 基本上任何Java应用程序都是多线程的,您的主线程不分配内存这一事实并不意味着其他线程也不分配。事实上,很可能通过VisualVM附加并显示GC选项卡,您在VM中生成了一些线程来监视GC资源并为VisualVM提供成为那些Shiny图表的指标。而且该监控可能会分配一些自己的资源来完成它的工作。

java - 如何为 GradleWorkerMain 设置 JVM 选项?

当我设置GRADLE_OPTS或JAVA_OPTS时,这些是在我运行./gradlewbuild时为GradleWrapperMain设置的为我的项目。但我也需要为GradleWorkerMain设置它们。我该怎么做?这是在Bamboo中运行该Gradle作业时的pslist。GradleWorkerMain中缺少我的JAVA_OPTS(例如-Dcool.opt=1)。53854?Sl2:13/home/apps/jdk7/bin/java-Dorg.gradle.daemon=false-Dcool.opt=1-Xms1g-Xmx8g-XX:PermSize=256m-XX:MaxP

java - 什么设置JVM参数MaxNewSize的值?人体工程学?

我的服务器信息:中央处理器:英特尔至强E5-2630内存:65970676K操作系统:Centos6.4内核:3.8.0jdk:热点JDK1.6.0.27我使用jmap-heappid打印堆信息:HeapConfiguration:MinHeapFreeRatio=40MaxHeapFreeRatio=70MaxHeapSize=21474836480(20480.0MB)NewSize=21757952(20.75MB)MaxNewSize=174456832OldSize=65404928(62.375MB)NewRatio=7SurvivorRatio=8PermSize=268

java - jvm字符串池intern中有多少个字符串

我正在分析一个应用程序,使用intern输入字符串确实很有帮助。我想要找到的是用于对象池的好数字,因此我不会有性能损失。我怎么知道有多少字符串被插入了实习生池?我正在运行一些生产跟踪,我无法真正计算输入。JVM是否为此提供了一个API? 最佳答案 从JDK7开始,您可以使用-XX:+PrintStringTableStatisticsJVM标志来打印有关字符串表大小的信息,例如桶的数量和桶的大小。您还可以通过调用命令jmap-heap*process_id*来使用jmap工具,该命令将在末尾显示驻留的字符串数和总大小(还需要JDK7

java - 为什么在 JVM 中 Integer 存储为 byte 和 short?

这是一段代码publicclassClassifier{publicstaticvoidmain(String[]args){Integerx=-127;//thisusesbipushIntegery=127;//thisusebipushIntegerz=-129;//thisusesipushIntegerp=32767;//maximumrangeofshortstillsipushIntegera=128;//usesipushIntegerb=129786;//invokesvirtualmethodtogetIntegerclass}}这是部分字节码stack=1,loc

java - 使用 Spring 缓存处理 Java 8 Optional

考虑一个可以插入和检索对象并使用Spring缓存抽象的服务类,我如何以返回Optional的方式注释方法?classMyServiceImplimplementsMyService{privatestaticfinalStringCACHE_NAME="itemCache";@Override@Cacheable(CACHE_NAME)publicOptionalfindById(Longid){//accesstherepositorytoretrievetheitem}@Override@CachePut(cacheNames=CACHE_NAME,key="#item.id")p

java - 在 spring boot 应用程序中禁用 HTTP OPTIONS 方法

我在springboot应用程序上开发了restAPI。API仅接受GET和POST,但在使用OPTIONS方法请求时,API响应200状态(而不是405)。我用谷歌搜索了这个问题,但没有一个解决方案是基于springboot的。响应:Allow:OPTIONS,TRACE,GET,HEAD,POSTPublic:OPTIONS,TRACE,GET,HEAD,POST需要禁用OPTIONS方法。 最佳答案 Previousanswer仅适用于tomcat,因此也添加我的。例如,您可以使用标准的servlet过滤器来禁用方法跨容器:i

java - 我可以启动一个 Eden 空间如此之大的 JVM,它运行到完成而没有任何 GC。假设我有一堆空闲内存

如果我有足够的空闲内存,我可以启动一个Java应用程序(说mMven)来单独使用Eden空间运行直到完成而不需要任何GC吗? 最佳答案 是的,我已经为Java6+中的实际应用程序完成了此操作。我从一个24GB的Eden空间、微型幸存者空间和永久空间开始。后来发现8GB绰绰有余。当有bug或错误时它仍然会GC,但在正常操作下不会。我相信选项是-Xmn24g-Xmx26g-XX:SurvivorRatio=100使用默认GC。该应用程序经过优化,生成的数据量低于1GB/小时,因此使用GC运行一天。

java - 带有 Java 8 lambdas 和 Optional 的子类

我不明白为什么下面的代码不能编译:privateResponseEntitybuildResponse(RequestModelrequestModel,RequestModelParamConverterparamConverter,SupplierxsdSupplier,SupplierxmlTemplateSupplier){returnOptional.ofNullable(newRequestErrorHandler().validate(validator,requestModel)).map(validationErrors->newResponseEntity(vali