java停止當前程序

一:Java應用程序退來出源的觸發機制有:

1.自動結束:應用沒有存活線程或只有後台線程時;
2.System.exit(0);
3.kill 或 ctrl+C;
4.kill -9 強制退出;
二.打開一個埠,監聽埠里的命令,收到命令後調用System.exit。

三.JMX

通過JMX的mbean遠程式控制制來實現。

⑵ java怎麼殺掉java進程

java中有調用外部程序的類,Runtime.getRuntime().exec("./**.exe");此函數返回的是一個 對象,該對象在創建後,可以對它進行 destroy () 殺掉子進程、 waitFor () 導致當前線程等待,如有必要,一直要等到由該 Process 對象表示的進程已經終止。 如下例子可以殺掉已經打開的文本進程:


importjava.io.BufferedReader;
importjava.io.InputStreamReader;
publicclassTest
{
publicstaticvoidmain(String[]args)
{
try
{
String[]cmd=
{"notepad.exe"};
Processproc=Runtime.getRuntime().exec(cmd);//開啟文本
BufferedReaderin=newBufferedReader(newInputStreamReader(proc
.getInputStream()));
Stringstring_Temp=in.readLine();
while(string_Temp!=null)
{
System.out.println(string_Temp);
if(string_Temp.indexOf("notepad.exe")!=-1)
Runtime.getRuntime().exec("Taskkill/IMnotepad.exe");
string_Temp=in.readLine();
}
}
catch(Exceptione)
{
//結束進程
}
}

結果如下:

⑶ java中,結束程序的代碼

跑完所有的代碼就程序自己結束了啊 你強制結束的話就用 return;或者System.exit(0);

⑷ java中終止程序的執行

方案操作如下:

(1)讓程序在一個單獨的線程中運行,然後在終止時,可以用專線程的屬終止方法來結束它。

⑸ java編程:結束代碼進程

首先,Java不允許你控制資源的釋放,所有的資源釋放都是由JVM來管理的,除非你退出JVM。
當你對資源調用dispose方法時,實際上是將資源的狀態置為已廢棄,gc會自動來將資源釋放掉。

其次,setDefaultCloseOperation()方法是用來設置用戶在此窗體上發起 "close" 時默認執行的操作。其中DISPOSE_ON_CLOSE調用任意已注冊WindowListener的對象後隱藏並釋放該窗體;EXIT_ON_CLOSE則使用System exit方法退出JVM。

dispose()是Window類的方法,並非Container類,它的JDK APIDOC裡面這樣描述:

釋放由此 Window、其子組件及其擁有的所有子組件所使用的所有本機屏幕資源。即這些 Component 的資源將被破壞,它們使用的所有內存都將返回到操作系統,並將它們標記為不可顯示。
通過隨後調用 pack 或 show 重新構造本機資源,可以再次顯示 Window 及其子組件。重新創建的 Window 及其子組件的狀態與釋放 Window 時這些對象的狀態一致(不考慮這些操作之間的其他更改)。

註:當 Java 虛擬機 (VM) 中最後的可顯示窗口被釋放後,虛擬機可能會終止。

也就是說,調用dispose()方法是將對象佔用的本地屏幕資源(screen resources)釋放,對象本身並沒有釋放,只是底層的對應點已經釋放了,所以仍然是可用的。
當然,調用底層本地屏幕資源已經被釋放的對象可能會出現一些錯誤,有時會報一個SWTException: Widget is disposed...。

如果你的程序已經沒有其他線程在運行的話,當所有的窗口都被dispose了之後,JVM也會退出。

你的問題中,只需要將該子窗口dispose掉,並且將對該窗口的引用置為null,不用管它是否還能使用,gc會自動將對象釋放的(不會立即釋放,對象有它的生命周期,gc會依照自己的演算法進行資源回收)。

⑹ 編寫java程序時如何強制結束程序

可以用這個語句,他是用來強制讓程序退出的。

System.exit(1);

例子:
public class Test {
public void doSomething(){
System.out.println("do something...");
System.exit(1);

System.out.println("Cannot be done...");
}
}
因為有System.exit(1);語句,"Cannot be done"永遠都沒有辦法打出來。

⑺ 求助:java,怎樣代碼實現結束正在運行的程序

System.exit(0);終止虛擬機!

⑻ java怎麼強行終止程序

在java程序中,可以使用java.lang.System的exit方法來終止程序的執行,

12345678

public static void main(String[] args) { System.out.println("開始進入程序..."); //do something System.out.println("程序准備退出了!"); System.exit(0); //下面這句話將不會列印出來 System.out.println("程序已經退出了!");}

但是使用exit方法的本質是終止了JVM的運行,如果同時運行了另外一個程序,使用exit方法同樣也會使該程序也終止,要避免此種情況可以使用interrupt()來中斷退出一個獨立運行的過程。對於多線程程序,必須要關閉各個非守護線程。public static void main(String[] args) { System.out.println("開始進入程序..."); //do something new Thread(){ public void run() { while (true) { System.out.println("我是另外的線程..."); try { Thread.sleep(2000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }.start(); //獲取man線程 Thread main = Thread.currentThread(); System.out.println(main.getName()); main.interrupt(); System.out.println("main線程已經退出了,但是不影響其他線程運行!"); }

只有在程序非正常退出時,才使用exit方法退出程序。

⑼ 用怎樣的JAVA代碼結束指定進程

1 線程正常執行完畢,正常結束。 也就是讓run方法執行完畢,該線程就會正常結束。 2 監視某些條件,結束線程的不間斷運行。 然而,常常有些線程是伺服線程。它們需要長時間的運行,只有在外部某些條件滿足的情況下,才能關閉這些線程。 通常,它們執行在一個while(true)的死循環中。 如: publicvoid run() { while(true){ someWork(); if(finished){ break; } try { Thread.sleep(10000); } catch (InterruptedException e) { /* TODO自動生成 catch 塊 * */ e.printStackTrace(); } } } 我們可以在while死循環內,每次循環時,察看外部條件,看看是否需要關閉當前線程。如果是,就break,跳出死循環,或者是拋出異常,跳出死循環,結束線程。 3 捕獲InterruptedException 運行時異常,中斷當前線程。 有些執行伺服任務的線程,在while(true)這樣的死循環內部,是一個阻塞中的方法。此時,就不能採用第二種方法了。因為,當該方法沒有返回時,該線程一直處於阻塞當中,根本無法執行其他語句。 此時,就需要調用該線程的interrupt方法,產生一個InterruptedException運行時異常,是阻塞中的那個方法拋出這個異常,從而讓我們有機會結束這個線程的執行。 如: publicvoid run() { while(true){ try { // getSendMessages 是BlockingQueue類。它的take方法將會阻塞! responseMessage = this.getSendMessages().take(); } catch (InterruptedException e1) { thrownew RuntimeException(); //或者break; } someWork(); } 一個外部的Thread 對象 指向這個線程。 需要結束這個線程時,只需要調用thread對象的interrupt() 方法,就會在responseMessage = this.getSendMessages()。take(); 這條語句中產生一個InterruptedException異常,從而結束該線程的阻塞狀態,通過拋出異常,或者break跳出死循環,結束這個線程。

⑽ java停止執行程序

如果在一個循環里,想退出這個循環請用break;
如果在一個method中,想不執行下面的代碼直接退出這個method請用return;
如果你想要程序直接中斷退出,不執行後面的任何代碼,請用System.exit(0);