`
annewman
  • 浏览: 30790 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JAVA关闭系统进程

    博客分类:
  • JAVA
阅读更多
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class StreamGrabber extends Thread {

	private final InputStream stream;
	private final List<String> holder;

	public StreamGrabber(InputStream stream) {
		this(stream, null);
	}

	public StreamGrabber(InputStream stream, List<String> holder) {
		this.stream = stream;
		this.holder = holder;
	}

	@Override
	public void run() {
		try {
			BufferedReader br = new BufferedReader(
					new InputStreamReader(stream));
			String line = null;
			while ((line = br.readLine()) != null) {
				if (holder != null)
					holder.add(line);
			}
		} catch (IOException ioe) {
			ioe.printStackTrace();
		}
	}

	public static Process performCommand(String command) {
		try {
			return Runtime.getRuntime().exec(command);
		} catch (IOException e) {
			e.printStackTrace();
			return null;
		}
	}

	public static void main(String[] args) {
		// notepa.exe关闭记事本进程
		String command = "taskkill /f /im notepa.exe";
		Process proc = performCommand(command);
		List<String> outputs = new ArrayList<String>();
		new StreamGrabber(proc.getInputStream(), outputs).start();
	}
}

 

分享到:
评论
3 楼 tinayatest 2013-09-27  
不错不错,我用java调用fortran生成的exe文件,中途要停止,谢谢了,
2 楼 yanlei 2012-10-19  
String command = "taskkill /f /im notepa.exe";  

太坑爹,是notepad.exe,害我以为代码错了呢!@
1 楼 huwenbiao2010 2010-05-24  
BUCUO   BU CUO

相关推荐

    Java通过进程名称杀进程

    本文将详细介绍如何使用Java代码实现基于进程名称的进程终止功能,特别是针对Windows操作系统下的`java-test.exe`进程。这不仅适用于开发者调试自身程序时的需求,也适用于系统管理员批量管理运行在Windows服务器上...

    java实现守护进程,有单独的监听进程, 两个或多个进程,两个或多个jvm

    在Java编程环境中,实现守护进程(Daemon)以及创建多个进程和JVM是非常常见的需求,特别是在构建分布式系统或者需要持续后台运行的服务时。本篇将详细阐述如何使用Java来实现这些功能。 守护进程通常是一个在后台...

    java 结束word进程

    在Java编程环境中,有时我们需要操作操作系统级别的任务,例如在运行某些程序或自动化脚本时,可能需要结束掉后台运行的Microsoft Word进程。这个过程涉及到Java的进程管理和操作系统交互。下面将详细讲解如何在Java...

    java实现后台进程

    后台进程的重构、类图设计和架构规划对于保证系统的稳定性和性能至关重要。通过分析《后台进程重构.doc》、查看《后台进程类图.vsd》和理解《后台进程架构.vsd》,我们可以深入理解如何在实际项目中高效地设计和实施...

    Java模拟操作系统(内存管理,进程管理,文件管理,进程通信)

    Java模拟操作系统是一个基于Java编程语言实现的微型操作系统模型,它主要涵盖了四个核心领域:内存管理、进程管理、文件管理和进程通信。这样的项目旨在帮助开发者理解操作系统的工作原理,并提供了一个实践平台来...

    获取当前系统所有进程

    - **Windows 系统进程**: ```java Process process = Runtime.getRuntime().exec("cmd.exe /c tasklist"); ``` 这里,`Runtime.getRuntime().exec()`方法用于执行命令,`/c`参数表示执行完命令后关闭命令提示...

    java、杀死启动进程、定时执行程序、隐藏黑窗口(dos窗口)、线程异常死亡(保活)

    在Java中,我们可以使用`Runtime.getRuntime().exec()`方法来执行系统命令,例如在Windows上使用`taskkill`命令来终止一个进程。例如,如果JBOSS服务器的进程ID为1234,我们可以通过以下代码终止它: ```java ...

    守护进程(java)

    守护进程在Linux或Unix等类Unix系统中广泛存在,但Java作为一种跨平台的语言,其本身并不直接支持守护进程的概念。不过,由于Java的跨平台特性,开发者可以通过模拟实现类似的功能。 在Java中,我们可以利用线程...

    java进程间管道通信1

    Java进程间的管道通信是一种进程间通信(IPC,...总的来说,Java进程间的管道通信虽然需要借助底层系统功能,但仍然是一个可行且高效的通信方式。通过理解这些概念和注意事项,开发者可以构建出可靠的多进程通信系统。

    操作系统实验实验进程管理

    进程的生命周期管理还包括对进程资源的管理和控制,例如,通过CloseHandle()函数关闭由CreateProcess()返回的句柄,确保资源的有效释放。同时,进程优先级的设置也是进程管理的一部分,通过dwCreationFlags参数可以...

    linux上通过sh方式启动java jar程序并做为守护进程

    在Linux系统中,Java应用程序通常以两种主要方式运行:直接通过命令行或作为守护进程(daemon)。本篇文章将深入探讨如何使用`sh`脚本来启动Java的JAR程序,并将其设置为守护进程,以便在后台持续运行,即使用户注销...

    批量关闭javaw进程

    3. **注意事项**:使用批处理文件结束进程时要谨慎,特别是对那些重要的系统进程。误操作可能导致应用程序或系统不稳定。在实际操作前,最好先确认要结束的进程是否确实需要关闭,并确保有权限执行`taskkill`命令。 ...

    java线程池使用后到底要关闭吗

    在代码中,我们创建了一个线程池,然后执行一个打印任务,打印出当前java进程的总线程数。结果显示,在创建到15万个线程时,内存占用百分百后java应用崩溃。说明线程未被回收。 因此,使用完线程池后一定要关闭,...

    Windows下设置守护进程JAR包挂掉自动重启,bat文件(已完美测试)

    无需复杂的操作系统知识,一个简单的bat脚本即可达成进程管理的目的。 对于Java项目的运维和部署来说,这个资源具有很高的参考价值。通过导入并简单配置这个脚本,项目 gains 了高可用性,大大减轻了人工监控和维护的...

    window,tomcat部署程序后进程查看

    完成这些步骤后,重启Tomcat服务,在任务管理器中看到的进程名就会从`java.exe`变为`ifms.exe`。 #### 五、增大Tomcat启动内存 1. **增加启动内存**: - 若要增加Tomcat的启动内存,需要编辑`tomcat_home\bin`目录...

    java进程间通讯笔记

    Java进程间通信(IPC,Inter-Process Communication)是多进程应用程序中实现不同进程间数据交换的方式。以下是对标题和描述中涉及的知识点的详细说明: 1. **管道(Pipe)**: 管道是一种半双工通信方式,允许...

    JNI系统进程列表查询

    本篇文章将深入探讨如何使用JNI来查询系统进程列表。 首先,我们需要了解JNI的基本原理。JNI提供了一种方式,让Java代码可以调用C/C++编写的本地方法,同时也允许C/C++代码调用Java对象的方法。通过定义`native`...

    checkstyle和jacob关闭进程

    6. 系统环境:某些系统设置或权限问题可能阻止Checkstyle和Jacob正确地启动或关闭进程。检查操作系统权限和环境变量设置,确保它们满足工具的需求。 7. 版本兼容性:不同版本的Checkstyle和Jacob可能存在兼容性问题...

    java系统命令调用

    ### Java系统命令调用 在Java编程中,有时我们需要通过Java程序来执行操作系统级别的命令,例如启动、停止服务,或者进行一些系统级别的操作。本文将详细介绍如何使用Java Runtime类中的`getRuntime().exec()`方法...

    Java加载dll,导致Java进程内存泄露

    标题 "Java加载dll,导致Java进程内存泄露" 描述了一个在Java编程中常见的问题,即通过Java Native Interface (JNI)加载动态链接库(dll)可能导致内存泄漏。这通常发生在Java程序与C/C++代码交互时,因为JNI允许Java...

Global site tag (gtag.js) - Google Analytics