使用Java来监视系统进程的解决方案
《使用Java来监视系统进程的解决方案》由会员分享,可在线阅读,更多相关《使用Java来监视系统进程的解决方案(2页珍藏版)》请在装配图网上搜索。
1、使用Java来监视系统进程的解决方案用第一个java虚拟机启动另一个虚拟机,并用第一个虚拟机的java程序去测试另个虚拟机上java程序运行时的内存,CPU资源占用情况。解决问题的限制和条件:1两个虚拟机运行在同台Windows_X86机上。2只需要知道第二个虚拟机上运行程序时,第二个虚拟机的内存、CPU用情况。3目的是:测试不同的程序在同个虚拟机上资源使用差别。解决问题的关键:第一如何启动另一虚拟机运行测试的java程序。第二如何用第一个虚拟机里的java程序,监视另一个虚拟机与其相关进程的运行情况。解决办法:一、使用java.io中的函数(命令试过没问题,程序请按下面提示完成)使用java
2、.io中的函数Runtime.getRuntime()。exec(系统命令);这里我给一个带命令参数的例子Runtimer=Runtime.getRuntime();Processp=null;Stringcmd=命令,参数;tryp=r.exec(cmd);catch(Exceptione)System.out.println(errorexecuting:+cmd0);这里要使用到的系统命令有几个:path/javafile用第二个jvm(path为第二个jre/bin/地址)运行java程序filetasklistlog.txt将当前系统进程写以“任务管理器”的格式用细节,如查询某个进程 ID的信息可以使用命令()写入log.txt文件中,关于tasklist 使tasklist /? 进行查询这两步均在第一个虚拟机完成,简单!二、常规方法使用JNI这里我给一套解决方案,网上有很多相关代码,自己去找找;触发试程序返回歙信息发送进程旅听命令/兼取信息vtWMrsus这套方案也可以实现,这里我使用简单的实现方法用C#H故监控,但这这个方案明显有其不足之处;就是测试对象的JNI接口会被触发,当然,如果不要求数据的准确性,单从比较的角度去看,只要运行的没有本身没有使用到JNI这个方案还是可行的。
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。