在介绍JDK有哪些工具时,第二大列应该是『故障排查、分析、监控和管理工具』,但我想先从监控工具jps、jstat这些比较基本的工具开始介绍,会比较好理解。
jps全名:Java Virtual Machine Process Status Tool ,透过该指令查看系统内所有HotSpot虚拟机正在运行的进程。
p.s:透过该指令查到的PID与在Linux/Mac作业系统中下top
指令查到的PID相同,代表进程的ID是唯一的。
jps [option] [hostid]
一样可以透过在终端机下jps -help
查看有哪些option可以使用。
注意!! 若直接下jps
则会出现系统内所有HotSpot虚拟机正在运行的进程资讯,而非跟-help出现一样的内容喔!!
指定特定主机,可以是ip地址和域名,也可指定具体协议,端口。
-q
:仅显示LVMID(Local Virtual Machine id),即PID,不显示主类的名称。
-m
:列出传递给main方法的参数。
-l
:列出应用程序主类完整的类名或jar包完整的路径。
-v
:列出虚拟机进程启动时的JVM参数。
-V
:输出通过.hotsportrc或-XX:Flags-< filename >指定的JVM参数)(这参数我目前还有点不明白,这就不介绍了)
jps
看看目前有哪些进程正在运行中若没有任何正在运行的Java程序或者相关的ide没有开着,那麽应该只会有一个,也就是jps。
p.s 每下一次jps,它的PID就会改变喔!代表每次jps
指令都是一个新的进程。
package Controller;
public class JpsTest{
public static void main(String[] args) throws InterruptedException{
System.out.println("Start"+Arrays.toString(args));
Thread.sleep(60000);
System.out.println("The End");
}
}
我写了一段程序码,将引数值输出,接着让目前的执行绪暂停执行一段时间,单位为毫秒(millisecond)
编译且执行,执行时我增加了一些参数
java -Xmx20m Controller/JpsTest Program arguments
编译与执行的指令说明,请参考Day4-java语言编译器:javac & 运行工具:java (上)
注:
-Xmx20m
:这是要给予的VM arguments(系统属性),Xmx 代表的意思是最大堆大小 ,mx是memory max的简称。
Program arguments
:编译时给予的args引数
-q
jps -q
⚠-q
这参数是只显示PID资讯,故-q与其他参数放在一起也不会有任何效果
-m
jps -m
-l
jps -l
运行时,如何指定class路径,jps
会显示一样的结果
java Controller.JpsTest
-v
jps -v
补充:
多个参数可一起放置,将想显示的资讯放在一起
jps -v -m
>>: 属性图模型 Property Graph Diagram
不敢相信今天是第30天了! 我完赛了!好感动啊~ 真的很感谢帮过我的老师/助教/同学/亲友…很多啦...
前中後运算式转置 中置运算式是人脑的计算中最直观且最习惯理解的表示式,会将运算子(EX:加号)放在两...
话不多说先上图 从左到右依序执行,最後该函式会再呼叫自己一次,图中淡化的区块是下个章节的主题 然後把...
常见的HTML elements 标题headings 若想在文字中设定像章节名称之类的标题,可以使...
前言 写在前面 Kaggle 不知道从何时开始,每年会有一段时间举办 30 days challen...