Abaixo crio uma classe que listará os processos ativos e pegaremos um determinado processo para finaliza-lo.
public void mataProcesso(){ try{ //Executa comando que lista todos os processos ativos de java Process p = Runtime.getRuntime().exec("jps"); //Ler lista de processos InputStream is = p.getInputStream(); InputStreamReader readerInput = new InputStreamReader( is ) ; BufferedReader reader = new BufferedReader( readerInput ); String linha = ""; //Enquanto linha não for nula, exibe linha while ( ( linha = reader.readLine() ) != null ){ //Se existir o processo abaixo, divide a String em 2, PID e NomeProcesso. //nomeDoProcesso é o nome do processo que mataremos. if ( linha.contains("nomeDoProcesso")){ String[] getPID = linha.split(" "); System.out.println("PID: "+ getPID[0]); System.out.println("Process name: "+ getPID[1]); //Mata Processo pelo pid Runtime.getRuntime().exec("taskkill /f /pid "+getPID[0] ); } } }catch(Exception e){ e.printStackTrace(); }
Um exemplo de saída dos processos (Meus processos ativos que estavam rodando no momento da execução) :
652 Jps 2164 jMentor 2444 Bootstrap 3428
Nenhum comentário:
Postar um comentário