查看java进程
Ⅰ 在java中如何获得当前系统的进程信息
1、在Windows的命令行 tasklist 可以获得进程列表
你先CMD, 再执行tasklist 可以看到类似任务管理器里的进程信息
2、JAVA要调用CMD命令, 用 Process process = Runtime.getRuntime().exec(command);
例如:查找某进程
Process proc = Runtime.getRuntime().exec("tasklist /FI \"IMAGENAME eq " + processName + "\"");
bufferedReader = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line = null;
while ((line = bufferedReader.readLine()) != null) {
if (line.contains("QQ.exe")) {
System.out.printlns("找到了");
}
}
Ⅱ 如何查看java进程大量占用内存
如何查看java进程大量占用内存
你好,方法如下:
可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
(1)top
top命令是linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
$ top -u oracle
内容解释:
PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称
常用的命令:
P:按%CPU使用率排行
T:按MITE+排行
M:按%MEM排行
(2)pmap
可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:
$ pmap -d 14596
(3)ps
如下例所示:
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' 其中rsz是是实际内存
$ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep oracle | sort -nrk5
其中rsz为实际内存,上例实现按内存排序,由大到小
Ⅲ 如何查看unix服务器java进程数量
可以使用ps命令。它能显示当前运行中进程的相关信息,包括进程的PID。Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息。
ps命令能提供一份当前进程的快照。如果你想状态可以自动刷新,可以使用top命令。
Ⅳ 如何在任务管理器中找出相关Java进程
将任务管理器里的进程调出来的方法如下:
1.打开任务管理器,出现如图所示的症状
2.将鼠标放置任务管理器外框空白区域双击
3.进程选项就出来了
Ⅳ 如何查看java进程及服务
鼠标放在电脑桌面底部右击,选择任务管理器,就能看到你想看的了
Ⅵ java查看进程
/**
* 查询正在运行的系统进程信息
*
* @param processName
* //eclipse.exe
*/
public static String findProcessInfo(String processName) {
BufferedReader bufferedReader = null;
String isF = null;
try {
Process proc = Runtime.getRuntime().exec("tasklist");
bufferedReader = new BufferedReader(new InputStreamReader(proc.getInputStream(), "GB2312"));
String line = null;
while ((line = bufferedReader.readLine()) != null) {
System.err.println(line + " ");
if (line.contains(processName)) {
isF = line;
break;
}
}
proc.getOutputStream().close();
proc.getInputStream().close();
proc.destroy();
proc = null;
} catch (Exception ex) {
ex.printStackTrace();
}
if (bufferedReader != null) {
try {
bufferedReader.close();
bufferedReader = null;
} catch (Exception ex) {
}
}
return isF;
}
其实就是java调用cmd的命令行实现,这种功能可以应用到很多方面,就看你的熟悉的程度了。
Ⅶ 查看进程状态需打开的窗口
摘要 查看所有网络连接信息
Ⅷ 如何用linux命令查询java进程
使用ps命令就可以了,格式如下:
ps -A | grep java
解释一下这个命令的意思,ps 是查看系统当前进程的命令,参数 -A(注意,是大写,linux中是区分大小写的)是显示所有程序, | 这个是管道符,用来把前面的命令结果交给后面做筛选的,grep java就是通过grep筛选命令筛选出包含java的程序。
Ⅸ 如何查看一个java进程有多少个线程在工作
理论上来说,如果你全用threadgroup来跑线程的话,有个叫enumerate的方法可以得到【该threadgroup下】所有active的(也就是你说的在工作的)线程以及子线程,但程序里面不一定是把线程放threadgroup里面的,有可能有人自己new一个出来run或者别的,所以不能完全依靠这个办法。我目前想到的办法,貌似得弄个全局的counter,开个守护线程,让这个线程去数监控所有线程的状态,依照线程是否Active去加减这个counter。
还有个懒点的,你看windows的taskmanager(假设你在win平台上的话),里面有一个column叫做thread
count的,我没试过到底准不准,不过这个最省事了,右键点出来一看就知道了。