package com.process;
 
public class ProcessTest {
public static void main(String[] args) {
new ProcessUtils().start();
}
}
 
 
==================================
package com.process;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
public class ProcessUtils extends Thread{
public static final String FIRE_FOX = "firefox.exe";
public static final String IE = "iexplore.exe";
public static final int FIVE_MINUTE = 1000*60*5;
 public synchronized void run(){
try {
while(true){
Thread.sleep(FIVE_MINUTE);
this.findAndKillProcess();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
     }
 
public  void findAndKillProcess() {
Process p = null;
int count = 0;
try {
p = Runtime.getRuntime().exec("tasklist");
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("start to kill...");
if(p != null){
BufferedReader bw = new BufferedReader(new InputStreamReader(p.getInputStream()));
String str = "";
while (true) {
try {
str = bw.readLine();
if (str != null) {
if(str.indexOf(FIRE_FOX)>-1 || str.indexOf(IE)>-1){
++count;
String[] processInfo = str.split("\\s{1,}");
System.out.println(processInfo[0]+":"+count);
Runtime.getRuntime().exec("tskill "+processInfo[1]);
 
}else{
break;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
System.out.println("Total killed "+count+" processes, done!");
}
}

java进程的更多相关文章

  1. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  2. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  3. Linux下java进程CPU占用率高-分析方法

    今天登陆同事的一台gateway 开始以为hive环境登陆不了了,仔细一看看了下是因为机器很卡,我每次等几秒没登陆就ctrl+c了,看了下是有个java进程cpu:340.4%  mem:14.6%  ...

  4. Linux下java进程CPU占用率高分析方法

    Linux下java进程CPU占用率高分析方法 在工作当中,肯定会遇到由代码所导致的高CPU耗用以及内存溢出的情况.这种情况发生时,我们怎么去找出原因并解决. 一般解决方法是通过top命令找出消耗资源 ...

  5. Linux删除多个java进程的其中一个

    一.背景: Linux后台运行了多个Java程序,进程名都是java. 执行pkill java会一次性杀掉所有的java进程. 二.解决思路: 先通过一定的检索条件,定位出指定的java进程 然后解 ...

  6. java进程性能分析步骤-超越昨天的自己系列(11)

    java进程load过高分析步骤: top 查看java进程情况     top -Hp 查看某个进程的具体线程情况   printf 0x%x 确认哪一个线程占用cpu比较多,拿出来转成16进制   ...

  7. 查看JAVA进程中哪个线程CPU消耗最高

    一,在centos linux 上查看进程占用cpu过高 top  shift+h 查看哪个进程程消耗最高     二,查看JAVA进程中哪个线程消耗最高   2.1 导出java运行的线程信息   ...

  8. Java使用FileLock实现Java进程互斥锁

    原理:JDK的nio包中FileLock实现类似Linux fcntl的文件锁, 可使文件被进程互斥访问.  借助此功能, 可以实现强大的Java进程互斥锁, 从而在应用层面保证同一时间只有惟一的Ja ...

  9. Java进程占用CPU资源过多分析

    问题描述: 生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析: 1,程序属于CPU密集型,和开发沟通 ...

  10. 生产环境下JAVA进程高CPU占用故障排查

    问题描述:生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析:1,程序属于CPU密集型,和开发沟通过, ...

随机推荐

  1. 整理 C#(同步调用、异步调用、异步回调)

    //闲来无事,巩固同步异步方面的知识,以备后用,特整理如下: class Program { static void Main(string[] args) { //同步调用 会阻塞当前线程,一步一步 ...

  2. (一)CSS3动画应用 - CSS3 实现 侧边栏展开收起

    @keyframes 规则用于创建动画. @keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果 @keyframes 中创建动画时,请把它捆绑到某个选择器,否则不 ...

  3. hdu 1282 回文数猜想

    Problem Description 一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数.任取一个正整数,如果不是回文数,将该数与他的倒序数相加,若其 ...

  4. 宏定义中使用do{}while(0)的好处 (转载)

    宏定义中使用do{}while(0)的好处   #define MACRO_NAME(para) do{macro content}while(0)   的格式,总结了以下几个原因:   1,空的宏定 ...

  5. java 时区处理机制(0时区转换到服务器时区)

    package com.globalroam.util; import java.util.Calendar; import java.util.Date; import java.util.Time ...

  6. POJ1722 动态规划

    POJ1722 问题重述: 给定一个数组a[1,2,..,n] .定义数组第i位上的减操作:把ai和ai+1换成ai - ai+1.输入一个n位数组以及目标整数t,求一个n-1次操作序列,使得最后剩下 ...

  7. 用委托、匿名函数、Lambda的方式输出符合要求的数

    最近看了一些博客,对委托和匿名函数和Lambda的方式有了一些更深的理解,在前人的基础上.我也写3个例子 using System; using System.Collections.Generic; ...

  8. ORA-16014报错解决

    今天在本地数据库操作的时候报错: SQL> alter database open;alter database open*第 1 行出现错误:ORA-16014: 日志 3 的序列号 55 未 ...

  9. HornetQ

    https://github.com/flsusp/http-queue https://github.com/sfr-network-service-platforms/hq-console htt ...

  10. 常用IC封装技术介绍

    1.BGA(ball grid array)球形触点陈列,表面贴装型封装之一.在印刷基板的背面按陈列方式制作出球形凸点用 以 代替引脚,在印刷基板的正面装配LSI 芯片,然后用模压树脂或灌封方法进行密 ...