
正文
java代码关掉电脑进程 java关闭dialog
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java 结束进程
直接结束好像不行。不过可以获得系统进程list。同时结束一个java执行的进程;
try {
Process p = Runtime.getRuntime().exec("tasklist");
BufferedReader bw = new BufferedReader(new InputStreamReader(p
.getInputStream()));
String pstr = "";
while ((pstr=bw.readLine())!=null){
System.out.println(pstr);
}
p.destroy(); //结束tasklist进程
} catch (Exception e) {
e.printStackTrace();
}
}
相关问答
Q1: 请问在java在如何关闭java自己启动的程序呢?
分类: 电脑/网络 软件
问题描述:
请问在java在如何关闭java自己启动的程序呢?
解析:
我详细说一下吧
java程序启动之后,JVM(java虚拟机)会实例化一个Runtime类,这是一个运行时类实例,包含这个java程序运行的所有信息,一个程序会实例化一个Runtime类且只能实例化一个Runtime类。我们可以通过这个Runtime类实例操作程序的运行。它的exit(int status)方法会终止程序的运行。例:
Runtime.getRuntime().exit(0);
其中参数status表示状态,0表示正常退出,非0表示异常退出。非0参数有什么用呢?
addShutdownHook(Thread hook)方法可以将一个Thread可程序的关闭hook(挂/联系)起来,程序退出前,会执行这个方法,这样我们可以根据退出状态作相应的善后操作。
另外,System.exit(int status)也是调用这个Runtime类实例的退出方法来间接实现程序的退出的。
再加一点,Runtime类可以创建子进程,如下:
Process p=Runtime.getRuntime().exec("notepad");
这个语句将会创建一个记事本程序(它是Runtime类创建的子进程)
p.destroy();
这个语句终止刚才创建的子进程。
Q2: 如何用Java关闭一个进程
解决这个问题,要看这个进程是java程序自定义的进程,还是操作系统的进程,操作系统的进程,又可以分为windows进程和Linux进程
一、针对操作系统的进程:
1,首先java用户,要具有操作进程的权限
2. 针对windows操作系统的进程,比如QQ进程:
String command = "taskkill /f /im QQ.exe";
Runtime.getRuntime().exec(command);
其中:taskkill 是命令名称,/f /im 是参数,QQ.exe是进程的可执行文件。
3.针对Linux操作系统
String command = "kill /f /im QQ.exe";
Runtime.getRuntime().exec(command);
二、在Java程序中自定义的进程
思路:在线程中设置一个标志变量,当这个变量的值在外界被改变的时候,有机会结束运行的线程
public class T {
public static void main(String[] args) {
// 启动线程
MyThread thread = new MyThread();
new Thread(thread).start();
// 你的其它的工作,此时线程在运行中
// 你不想让线程干活了,停掉它
// 注意,这只是一个标志,具体线程何时停,并不能精确控制
thread.allDone = true;
}
}
class MyThread implements Runnable {
boolean volatile allDone = false;
public void run() {
// 每次循环都检测标志
// 如果设置停止标志时已经在循环里
// 则最长需要等待一个循环的时间才能终止
while (!allDone) {
// 循环里的工作
}
}
}
Q3: 怎样用JAVA编写一个程序去关闭电脑上的一个软件呢?请帮我写一个完整的程序。
我只提供思路,具体实现你自己去弄,很简单:
1.在命令行里面输入tskill PPAP,就可以结束PPAP进程
2.java中的Runtime类提供一个直接运行命令行程序的方法:
Process p=null;
p=Runtime.getRuntime().exec("tskill PPAP");
Thread.sleep(2000);
p.destroy();
会抛出异常的,要用try catch包含
具体结束哪个程序你可以通过键盘输入,传进去执行。自己玩吧。
关于java代码关掉电脑进程和java关闭dialog的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





