
正文
java代码监测进程状态,java进程查询
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java获取进程的运行状态。主要是获取该进程有没有终止
1、比较常用的,就是在B程序中添加Log文件机制,随时记录B程序的执行状态,或者只记录B程序捕捉到的异常,A程序需要查看B程序执行状态的时候就读取B的log文件,进行分析。另一种方法是通过B程序的结束返回代码来判断B的退出原因。
2、通过这个函数可得到Process的终止方式。如果未终止,抛出异常。捕获这个异常就行了。
3、通过调用Thread.getState()方法获取当前线程的状态。以下是我的代码,可以直接编译运行。
相关问答
Q1: 用java监视系统进程的两个解决方案
其实Runtime.exec()方法设计,可接受一个单独的字符串,这个字符串是通过空格来分隔可执行命令程序和参数的;当然也可以接受字符串数组参数。如上图所示,ProcessBuilder的方法入参是一个ListString或者多个字符串。
B、 jstack jstack主要用来查看某个Java进程内的线程堆栈信息。C、 jmap(Memory Map)和jhat(java Heap Analysis Tool)jmap用来查看堆内存使用状况,一般结合jhat使用。
如果是第一种情况,那你还需要在java内部再起一个进程,通过执行操作系统的shell命令来查看那个进程的运行状态。比如那个外部进程的ID为3119,则执行cat /proc/3119/status | grep VmRSS就可以过滤出该进程的物理内存占用量。
百会PM集成WBS任务分解、文档管理、工时管理、仪表板、日历、会议、报表、论坛、邮件、成员管理等基础应用,是以低成本、高安全、多项目的在线解决方案。
Q2: 如何监控java进程
A、 jps(Java Virtual Machine Process Status Tool)jps主要用来输出JVM中运行的进程状态信息 B、 jstack jstack主要用来查看某个Java进程内的线程堆栈信息。
监控 Tomcat 线程数,可以使用 jstack 命令获取线程信息,然后统计线程数。
TOP命令,不能只监控进程的CPU和内存的使用量,并且也不能看到使用量总和,还是用脚本吧,类型这样:ps -aux|grep java|awk |awk BEGIN END就可以,CPU同样。
为了查找原因并解决问题,需要拿到服务器的相关日志,可以采用以下几种方法:查看操作系统的系统日志,查找对应时间段的信息,如果系统日志中发现java进程异常的信息,可以确认具体是哪个线程或哪段代码引起了CPU过高的问题。
Q3: java怎么判断某个进程是否存在
1、程序运行截图如下,这里我也用颜色对进程名进行了标记,如下,可以看出,当前的vsftpd进程正在运行:至此,我们就完成了利用Java来判断某个进程是否正在启用或运行。
2、前段时刻测试的时辰发现客户端,双击停笔多次回生成多次XXX.exe.所以在启动时判定一下时辰有历程已经启动了,下面把代码写出来。
3、oracle里面没有问题:比如查一下用户表是否存在:select *from tab where tname = SM_USER;你可以在mysql执行一下这个sql: select *from tab;有结果就可以使用,结合你的程序做判断在处理。
4、信号 0 (检查进程是否存在)只能以数字方式指定。如果命令名包括斜杠 (/), 那么执行该特定文件的进程将被杀掉, 这与进程名无关。
java代码监测进程状态的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java进程查询、java代码监测进程状态的信息别忘了在本站进行查找喔。






