Java虚拟机配置参数(目前不够完善)

最近看了有关虚拟机的书籍,发现有很多虚拟机配置参数不知道,特来记录一下,

-XX: MaxDirectMemorySize--->设置直接内存,不设置与Java堆内存最大值一致

-XX:PermSize和-XX:MaxPermSize--->设置方法区大小

-Xoss--->设置本地方法栈大小

-XX:+HeapDumpOnOutOfMemoryError--->生成内存溢出快照(查看内存溢出快照的工具,安装JDK时,有自带了几种工具,具体怎么使用百度、谷歌)

-XX:+/-UseTLAB--->设置是否使用本地线程分配缓冲

-XX:-Xmx和-Xms--->设置堆内存(也是最常见的)

-XX:+UseLWPSynchronization(默认值)和-XX:+UseBoundThreads---->设置虚拟机使用线程模型

-XX:+UseSpinning--->设置是否启动自旋锁

-XX:PreBlockSpin--->设置自旋锁的次数

-XX:+UseBiasedLocking--->设置设置虚拟机启用偏向锁(JDK1.6的默认值)

-XX:+UseCompressedOops--->对象指正压缩功能(这个还待确认)

-XX:+TraceBytecodes和-XX:StopOmterpreterAt=<n>--->HotSpot虚拟机下设置断点调试

目前只看到过这些,如有不足,还请各位大神告知..谢谢~~

时间: 2024-12-13 07:19:31

Java虚拟机配置参数(目前不够完善)的相关文章

java虚拟机启动参数分类详解

官方文档见: http://docs.sun.com/source/819-0084/pt_tuningjava.html java启动参数共分为三类:其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容:其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容:其三是非Stable参数(-XX),此类参数各个jvm实现会有所不同,将来可能会随时取消,需要慎重使用: 一.标准参数中比较有用的: verbose -verbo

java 虚拟机启动参数 (转)

在Java.J2EE大型应用中,JVM非标准参数的配置直接关系到整个系统的性能. JVM非标准参数指的是JVM底层的一些配置参数,这些参数在一般开发中默认即可,不需要任何配置.但是在生产环境中,为了提高性能,往往需要调整这些参数,以求系统达到最佳新能. 另外这些参数的配置也是影响系统稳定性的一个重要因素,相信大多数Java开发人员都见过“OutOfMemory”类型的错误.呵呵,这其中很可能就是JVM参数配置不当或者就没有配置没意识到配置引起的. 为了说明这些参数,还需要说说JDK中的命令行工具

java虚拟机启动参数

常用参数 堆设置 -Xms :初始堆大小 -Xmx :最大堆大小 -XX:NewSize=n :设置年轻代大小 -XX:NewRatio=n :设置年轻代和年老代的比值.如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n :年轻代中Eden区与两个Survivor区的比值.如:3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5 -XX:MaxPermSize=n :设置持久代大小 -XX:Hea

给你的JAVA程序配置参数(Properties的使用)

我们在写JAVA程序时,很多时候运行程序的参数是需要动态改变的 测试时一系列参数,运行时一系列参数 又或者数据库地址也需要配一套参数,以方便今后的动态部署 这些变量的初始化,我们在写小DEMO时完全可以写死在JAVA文件中 但程序需要发布或者局部部署时,这些参数就需要脱离程序代码了 我们有多种存放参数的方式,比如数据库.XML文件又或者直接是txt文件 现在介绍一种使用JAVA,简单方便的参数读取方式 .properties文件,我们并不陌生,很多优秀的框架中就能看到它的存在,比如Hiberna

图说hibernate注释--java里配置参数(一.1)

**************************************************************[来自我另一博文]

深入理解Java虚拟机-常用vm参数分析

Java虚拟机深入理解系列全部文章更新中... 深入理解Java虚拟机-Java内存区域透彻分析 深入理解Java虚拟机-常用vm参数分析 深入理解Java虚拟机-JVM内存分配与回收策略原理,从此告别JVM内存分配文盲 深入理解Java虚拟机-如何利用JDK自带的命令行工具监控上百万的高并发的虚拟机性能 深入理解Java虚拟机-如何利用VisualVM对高并发项目进行性能分析 深入理解Java虚拟机-你了解GC算法原理吗 话不多说,今天就分析一下一些常用的Java虚拟机的参数设置,以及如何更好

读《深入理解Java虚拟机》

Java虚拟机运行时数据区 对象的创建 Java创建对象,在语言层面上使用new关键字.虚拟机遇到new关键字时,会检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载.解析和初始化过.如果没有,那就必须先执行类加载过程.类加载通过之后,虚拟机将会为新生对象分配内存.对象所需的内存在类加载完成后就能完全确定.分配内存的方法有"指针碰撞"和"空闲列表"两种方式,如果Java堆是规整的,则采用前者:否则,采用后者.Java

java虚拟机内存不足,“Could not create the Java Virtual Machine”问题解决方案

在运行java程序时,遇到问题"Could not create the Java Virtual Machine."如下截图: 大概原因,就是java堆内存不足以运行JVM,需要增加内存. 网上搜索此问题,大部分都是针对某个程序进行修改JVM内存的解决方法,比如eclipse,等.试问,若是其他程序出现问题了呢? 现在给出一个全局的java虚拟机修改内存的方法.在WIN XP,WIN 7,WIN8都可以. 解决方案:增加一个系统环境变量 变量名:_JAVA_OPTIONS 变量值:-

(转)《深入理解java虚拟机》学习笔记3——垃圾回收算法

Java虚拟机的内存区域中,程序计数器.虚拟机栈和本地方法栈三个区域是线程私有的,随线程生而生,随线程灭而灭:栈中的栈帧随着方法的进入和退出而进行入栈和出栈操作,每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这三个区域的内存分配和回收都具有确定性.垃圾回收重点关注的是堆和方法区部分的内存. 常用的垃圾回收算法有: (1).引用计数算法: 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器都为0的对象就是不再被使用的,垃