• -XX:PermSize/-XX:MaxPermSize,永久代内存;

1. 虚拟机参数:-ea,支持 assert 断言关键字

eclipse 默认是不开启此参数的,也就是虽然编译器支持 assert 关键字,但并不起作用,需要为虚拟机的默认参数中增加此配置选项:

  • 【Window】⇒ 【Preferences】⇒ 【Java】⇒ 【Installed JREs】
  • 右侧对点中待配置参数的JREs,对其进行编辑:

如下图所示:

2. Java 堆溢出

Java 堆用于存储对象实例(new),因此只要不断地创建对象,且保证 GC Roots 到对象之间有可达路径以避免垃圾回收机制清除这些对象,那么对象数量到达最大堆(-Xmx)的容量限制后,就会产生内存溢出异常:

  • 限制 Java 堆的大小为 20M,且不可扩展:-Xms20m -Xmx20m

    • 将最小值 -Xms 参数与最大值 -Xmx 参数设置为一样便可避免 Java 堆的自动拓展;
  • -XX:+HeapDumpOnOutOfMemoryError,可让虚拟机在出现内存溢出异常时,Dump 出当前的内存堆转储快照以便进行定位分析:
/**
* VM args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError
*/
public class HeapOOM {static class OOMObject {}public static void main(String[] args) {List<OOMObject> list = new ArrayList<OOMObject>();int counter = 0;while (true) {list.add(new OOMObject());System.out.println("counter = " + (++counter));}}
}

Java VM(虚拟机) 参数相关推荐

  1. Java JVM虚拟机参数配置 - GC

    1.堆内存 Java中的堆是JVM所管理的内存中最大的一块内存空间,主要用于存放各种类的实例对象. 在Java中堆被划分成两个不同的区域:新生代(Young).老年代(Old).而新生代又被划分为三个 ...

  2. java VM argument_java vm args

    这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的.第一次出现这样的的问题以后,引发了其他的问题.在网上一查可能是JAVA的堆栈 ...

  3. jvm_虚拟机参数讲解(一)

    其实在JAVA中,虚拟机参数主要起到的作用,在虚拟机运行的时候,在程序运行的时候,这个虚拟机的调配,参数会对应用系统的运行的良好,性能等等都会产生直接的关系,比如说我们有两个方面堆参数的分配大多数的参 ...

  4. java虚拟机参数-X 与 -XX的区别

    java虚拟机参数-X 与 -XX的区别 java虚拟机参数-X 与 -XX的区别 为什么有的用-X 如,-Xms -Xmx -Xmn等 有的用-XX: 如-XX:MaxPermSize=100M等 ...

  5. java初始化虚拟机错误_异常 - 虚拟机初始化错误 - Error occurred during initialization of VM...

    1 环境配置信息 1.1 服务器配置信息 服务器是物理机, 配置信息如下: CPU型号 CPU个数 CPU核数 CPU线程数 内存 Intel(R) Xeon(R) CPU E5-2630 v4 @ ...

  6. java获取vm运行参数_如何获取在Java中运行Java VM的版本?

    java获取vm运行参数 To get the version of running VM (Virtual Machine) in Java, we use the getProperties() ...

  7. Java虚拟机参数配置

    虚拟机优化是我们面试常被问到的知识点,也是Java开发运用的重要内容,虽然现在实践中我也尚未接触到足够的内容,并没有在生产环境中进行虚拟机优化的经验,但学习这方面的知识是必不可少的,有备无患对吧! 下 ...

  8. java获取vm运行参数_如何获取在Java中运行Java VM的名称?

    java获取vm运行参数 To get the name of running VM (Virtual Machine) in Java, we use the getProperties() met ...

  9. java.vm.info_深入理解java虚拟机

    第四章:java虚拟机命令行工具 1:jps命令行进程状况工具      jps [options] [hostid] C:\Users\lenovo>jps -l 13824 sun.tool ...

最新文章

  1. 链表倒数第k个节点_面试题 02.02. 返回倒数第 k 个节点
  2. java技术系列(一) Enum
  3. 面试官都会问的Mybatis面试题,你会这样回答吗?
  4. RabbitMQ 幂等性概念及业界主流解决方案
  5. 第九届“图灵杯”NEUQ-ACM程序设计竞赛个人赛题解
  6. java file util_Java FileUploadUtil工具类详解
  7. Linux ab 压力测试工具
  8. 全国计算机三级网络技术题库南开,计算机三级网络技术机题库_及答案(南开100题).doc...
  9. mysql实现pr曲线_如何画PR curve (PR曲线)基于COCO格式数据集 在maskrcnn_benchmark中
  10. Mysql 数据库迁移
  11. 如何将手机里的小视频做成GIF动图?一键轻松生成GIF动画
  12. html5断点续传播放视频,HTML5 大文件断点续传完整思路整理
  13. 7.交易开拓者-公式进阶(一)
  14. Pytorch kaggle 房价预测实战
  15. 传奇类手游是怎么做推广的?
  16. 纯JS+HTML+CSS实现表格增删改查翻页--模板文件管理
  17. burp安装及代理设置
  18. python比赛积分类算法题_python常用算法题
  19. echarts图表折线图柱状图多个X轴Y轴以及一个Y轴反向
  20. Web TOP10漏洞之sql注入

热门文章

  1. Adobe AIR教程:ANE面向IAP的测试和开发
  2. PhoneGap的Android端插件开发
  3. druid mysql 配置优化_数据库连接池优化配置(druid,dbcp,c3p0)
  4. 【java学习之路】(数据结构篇)003.链表
  5. std::atomic_thread_fence
  6. debian 查看php版本,在debian 9中为php7.0-fpm启用状态查询
  7. worker进程和task进程区别_swoole中使用task进程异步的处理耗时任务
  8. java后置过滤器_java - 如何使用zuul将响应主体提取到后置过滤器中
  9. qint64转字符串
  10. English trip -- VC(情景课)1 F Another view