当前位置:网站首页>JVM命令之 jinfo:实时查看和修改JVM配置参数
JVM命令之 jinfo:实时查看和修改JVM配置参数
2022-07-07 00:46:00 【张俊杰1994】
学习 尚硅谷 宋红康 JVM从入门到精通 的学习笔记
概述
jinfo全拼是 Configuration Info for Java
作用是查看虚拟机配置参数信息,也可以用于调整虚拟机的配置参数。
在很多情况下,Java应用程序不会指定所有的Java虚拟机参数,毕竟虚拟机参数太多了,开发人员可能不知道某个Java虚拟机的参数设置的默认值到底是多少,比如说我想看一下默认的新生代老年代比例分配是多少等等。这个时候如果开发人员去查找开发文档的话,可能就比较麻烦了,但是使用jinfo工具,开发人员就能很快的查看到某个虚拟机配置的参数。

基本语法

查看
jinfo -sysprops 进程id
可以查看由System.getProperties()取得的参数
jinfo -flags 进程id
查看曾经赋过值的一些参数
jinfo -flag 参数名称 进程id
查看某个java进程的具体参数信息
修改

针对boolean类型
jinfo -flag [+|-]参数名称 进程id
针对非boolean类型
jinfo -flag 参数名称=参数值 进程id
演示


设置完以后启动上面的main方法。下面使用命令查看一下。
用 jps -v可以看到我们自己设置的参数,但是如果我们想知道我们没有设置的参数是多少,我们使用jps -v就不太行了.
使用 jinfo -sysprops 2540就能查看一些信息。
查询赋过值的信息
查看具体赋值过的信息,查询是否使用并行垃圾回收器呢。 “+” 代表使用了
查询是否使用了串行的垃圾回收器, “- ”代表没有使用
查看最大堆空间大小
修改参数可以立即生效,但是不是所有的值都可以动态的去修改,只有被标记为manageable的flag可以被实时的修改,
下面命令是查看PrintGCDetails的值,结果是 “-”代表没有修改过
第一行命令 PrintGCDetails 前面添加 “+” , 再去执行第二行的命令,查看,就发现之前是"-“,现在变成了”+",说明参数被修改了.
下面也是动态的修改,修改后再查看,发现修改成功了.

注意,动态修改的值仅仅临时有效,当你这个进程关闭之后,这个动态修改的参数就失效了,你下次再启动Java程序的时候,又回来原来的值了.
扩展
拓展
java -XX:+PrintFlagsInitial
查看所有JVM参数启动的初始值
java -XX:+PrintFlagsFinal
查看所有JVM参数的最终值
值前面添加冒号:的是修改之后的值,没有添加的都是没有发生改变的初始值
java -参数名称:+PrintCommandLineFlags
查看那些已经被用户或者JVM设置过的详细的XX参数的名称和值
演示

将结果输出到 1.txt 里面.

边栏推荐
- 苹果cms V10模板/MXone Pro自适应影视电影网站模板
- Senior programmers must know and master. This article explains in detail the principle of MySQL master-slave synchronization, and recommends collecting
- Explication contextuelle du langage Go
- Classic questions about data storage
- Nvisual network visualization
- Digital IC interview summary (interview experience sharing of large manufacturers)
- 【日常训练--腾讯精选50】292. Nim 游戏
- Input of native applet switches between text and password types
- [shell] clean up nohup Out file
- Forkjoin is the most comprehensive and detailed explanation (from principle design to use diagram)
猜你喜欢
![Cf:c. column swapping [sort + simulate]](/img/0e/64d17980d3ec0051cdfb5fdb34e119.png)
Cf:c. column swapping [sort + simulate]
![C. colonne Swapping [tri + Simulation]](/img/0e/64d17980d3ec0051cdfb5fdb34e119.png)
C. colonne Swapping [tri + Simulation]

PTA ladder game exercise set l2-004 search tree judgment

【SQL实战】一条SQL统计全国各地疫情分布情况

ML之shap:基于adult人口普查收入二分类预测数据集(预测年收入是否超过50k)利用shap决策图结合LightGBM模型实现异常值检测案例之详细攻略

R语言【逻辑控制】【数学运算】

Distributed global ID generation scheme

Go语学习笔记 - gorm使用 - gorm处理错误 | Web框架Gin(十)

产业金融3.0:“疏通血管”的金融科技

Introduction to distributed transactions
随机推荐
STM32 key state machine 2 - state simplification and long press function addition
Introduction to distributed transactions
【日常训练--腾讯精选50】235. 二叉搜索树的最近公共祖先
Determine whether the file is a DICOM file
Digital IC interview summary (interview experience sharing of large manufacturers)
盘点国内有哪些EDA公司?
搞懂fastjson 对泛型的反序列化原理
C. colonne Swapping [tri + Simulation]
PTA 天梯赛练习题集 L2-002 链表去重
Opensergo is about to release v1alpha1, which will enrich the service governance capabilities of the full link heterogeneous architecture
随机生成session_id
JVM the truth you need to know
Go语学习笔记 - gorm使用 - 原生sql、命名参数、Rows、ToSQL | Web框架Gin(九)
Dynamic memory management
力扣102题:二叉树的层序遍历
Interview skills of software testing
Input of native applet switches between text and password types
Différenciation et introduction des services groupés, distribués et microservices
How to improve website weight
Go 語言的 Context 詳解