java deamon 守护进程 实例

守护进程很简单,就是优先级最低的进程

以下是实例

 

package com.test.deamon;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


/**
 * DELETE UNEXPECTED THREAD
 * ADD 2012-05-09
 * @author DIRK.ZHANG
 */
public class Deamon extends Thread{
	
	public final String[] THREADS = {"taskkill /f /im notepad.exe",
										"taskkill /f /im rose.exe",
										"taskkill /f /im chrome.exe"};
	
	public static void main(String[] arg)
	{
		Thread deamon = new Deamon();
		deamon.setDaemon(true);
		deamon.start();
		Thread noDeamon = new MainThread();
		noDeamon.start();
		/*String[] testStr = {"21"};
		System.out.println(testStr.length);*/
	}
	
	@Override
	public void run()
	{
		try {
			while(true)
			{
				for(int i=0;i<THREADS.length;i++)
				{
					Process proc = Runtime.getRuntime().exec(THREADS[i]);
					//Process proc = Runtime.getRuntime().exec("taskkill /f /im notepad.exe");
					BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
					String string_temp;
					while((string_temp = in.readLine()) !=null)
					{
						System.out.println(string_temp);
					}
				}
				Thread.sleep(1000);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
}

   守护进程

   package com.test.deamon;

public class MainThread extends Thread
{
	@Override
	public void run()
	{
		while(true)
		{
			System.out.println("main thread");
			try {
				Thread.sleep(500);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
}

  主进程,无实用

 

实例讲述的是用守护进程删除一些进程的故事

你可能感兴趣的:(java,实例,process,deamon,守护进程)