社区
Java SE
帖子详情
如何用java获取指定进程的线程数量
wgd81685
2017-08-17 11:47:04
如题!
ps: sigar有程序崩溃的风险,不能使用,求其他方法!
...全文
340
3
打赏
收藏
如何用java获取指定进程的线程数量
如题! ps: sigar有程序崩溃的风险,不能使用,求其他方法!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wgd81685
2017-08-22
打赏
举报
回复
补充说明:使用的句柄最后需要关闭,否则会导致句柄泄露 MyKernel32.INSTANCE.CloseHandle(hProcessSnap);
wgd81685
2017-08-17
打赏
举报
回复
方法已找到,使用Jna,jna-platform来调用windows api,具体方法如下 public int getCurrentProcessThreadCount() { int cnt = 0; MyKernel32 mk = MyKernel32.INSTANCE; int id = mk.GetCurrentProcessId(); HANDLE hProcessSnap = mk.CreateToolhelp32Snapshot(Tlhelp32.TH32CS_SNAPPROCESS, new WinDef.DWORD(id)); if (hProcessSnap == WinBase.INVALID_HANDLE_VALUE) { return cnt; } Tlhelp32.PROCESSENTRY32 pe32 = new Tlhelp32.PROCESSENTRY32(); boolean flag = mk.Process32First(hProcessSnap, pe32); WinDef.DWORD dword; while (flag) { dword = pe32.th32ProcessID; if (id == dword.intValue()) { cnt = pe32.cntThreads.intValue(); break; } flag = mk.Process32Next(hProcessSnap, pe32); } return cnt; }
java
进程
线程
数量
_如何查询一个
进程
下面的
线程
数(
进程
和
线程
区别)
在平时工作中,经常会听到应用程序的
进程
和
线程
的概念,那么它们两个之间究竟有什么关系或不同呢?一、对比
进程
和
线程
1)两者概念-
进程
是具有一定独立功能的程序关于某个数据集合上的一次运行活动,
进程
是系统进行资源分配和调度的一个独立单位.-
线程
是指
进程
内的一个执行单元,也是
进程
内的可调度实体.
线程
是CPU调度和分派的基本单位,它是比
进程
更小的能独立运行的基本单位
线程
自己基本上不拥有系统资源,只拥...
查看
进程
线程
的方法
jconsole 来查看某个
Java
进程
中
线程
的运行情况(图形界面)taskkill 杀死
进程
(task -f -pid ${pid})jstack 查看某个
Java
进程
(PID)的所有
线程
状态。任务管理器可以直接查看
进程
和
线程
信息,也可以直接杀死
进程
。ps -fT -p 查看某个
进程
(PID)的所有
线程
。top -H -p 查看某个
进程
(PID)的所有
线程
。jps 命令查看所有
Java
进程
。Linux系统中
线程
实现方式。tasklist 查看
进程
。ps -ef 查看所有
进程
。
java
获取
某
进程
的
进程
数
最近工作中用到一些
线程
方面的知识,主要用到一些
进程
的pid以及
进程
数量
方面的知识一下是一些代码 public static int getCountByPName(String PNAME) { String[] ss = null; int count = 0;
shell脚本
获取
java
进程
号后两种处理模式
1.
获取
java
进程
号或者
获取
进程
数量
#!/bin/bash #
获取
进程
号 #ID=`ps -ef | grep xxx.jar | grep -v grep | awk '{print $2}'` #杀
进程
#kill -9 $ID #
获取
进程
的个数 ID=`ps -ef | grep xxx.jar | grep -v grep | wc -l` echo $ID #判断
进程
的个数(判断该
进程
是否正在运行) if(($ID>0)) then echo "已经启动" else echo "
Java
获取
当前
进程
的相关信息(
进程
ID,
进程
启动时间等)
主要是 ManagementFactory 相关的类,翻一翻 API 会有不少收获: package dongguabai.demo.jvm.process; import
java
.lang.management.ManagementFactory; import
java
.lang.management.MemoryManagerMXBean; import
java
.lang.management.RuntimeMXBean; import
java
.lang.management.ThreadMX
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章