默认安装IDEA在安装目录的bi目录下面,有一个.vmoptions文件,这个文件可以对IDEA启动和运行进行配置。
-server
-Xms128m
-Xmx512m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
默认配置如下,详细解释一下下面的参数。
- 设置JVM内存的参数有四个:
-Xms
Java Heap(JVM的堆内存初始化最小分配大小)
-Xmx
Java Heap(JVM的堆内存初始化最大分配大小)
-XX:ReservedCodeCacheSize=240m
保留代码缓存大小,如果项目比较大建议设置大一点,也就是每一部操作都能被记录下来。
-XX:+UseConcMarkSweepGC
设置年老代为并发收集,这个参数我不是很懂,因为涉及到JVM的GC(垃圾回收机制)
即CMS收集,设置年老代为并发收集。CMS收集是JDK1.4后期版本开始引入的新GC算法。它的主要适合场景是对响应时间的重要性需求大于对吞吐量的需求,能够承受垃圾回收线程和应用线程共享CPU资源,并且应用中存在比较多的长生命周期对象。CMS收集的目标是尽量减少应用的暂停时间,减少Full GC发生的几率,利用和应用程序线程并发的垃圾回收线程来标记清除年老代内存。 此选项在Heap Size 比较大而且Full GC收集时间较长的情况下使用更合。
https://blog.csdn.net/songhaifengshuaige/article/details/54177612
-XX:SoftRefLRUPolicyMSPerMB=50
每兆堆空闲空间中SoftReference的存活时间即软引用对象在最后一次被访问后能存活0毫秒(JVM默认为1000毫秒)。
-ea
这个-ea不知道是个什么配置的参数,有知道的话可以在下方留言。
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
网友评论