java結束程序,java結束程序的語句

本文目錄一覽:

如何用Java關閉一個進程

解決這個問題,要看這個進程是java程序自定義的進程,還是操作系統的進程,操作系統的進程,又可以分為windows進程和Linux進程

一、針對操作系統的進程:

1,首先java用戶,要具有操作進程的權限

2. 針對windows操作系統的進程,比如QQ進程:

String command = “taskkill /f /im QQ.exe”;  

Runtime.getRuntime().exec(command);

其中:taskkill 是命令名稱,/f /im 是參數,QQ.exe是進程的可執行文件。

3.針對Linux操作系統

String command = “kill /f /im QQ.exe”;  

Runtime.getRuntime().exec(command);

二、在Java程序中自定義的進程

思路:在線程中設置一個標誌變量,當這個變量的值在外界被改變的時候,有機會結束運行的線程

public class T {

public static void main(String[] args) {

// 啟動線程

MyThread thread = new MyThread();

new Thread(thread).start();

// 你的其它的工作,此時線程在運行中

// 你不想讓線程幹活了,停掉它

// 注意,這只是一個標誌,具體線程何時停,並不能精確控制

thread.allDone = true;

}

class MyThread implements Runnable {

boolean volatile allDone = false;

public void run() {

   // 每次循環都檢測標誌

   // 如果設置停止標誌時已經在循環里

   // 則最長需要等待一個循環的時間才能終止

   while (!allDone) {

   // 循環里的工作

   }

}

}

Java中執行退出(結束)程序的語句是什麼?

System.exit(-1)終止當前正在運行的 Java 虛擬機,退出程序。其中參數按照慣例,是用非零的參數碼錶示異常終止。

java中終止程序的執行

方案操作如下:

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

(2)退出Java程序時盡量不要使用java.lang.System的exit方法。Exit 方法可以終止JVM,從而終止程序,但如果同時運行了另一個Java程序,使用exit方法就會讓該程序也關閉,這顯然不是希望看到的情況!!!!

要退出Java程序,可以使用destory()退出一個獨立運行的過程。對於多線程程序,必須要關閉各個非守護線程。

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

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()來中斷退出一個獨立運行的過程。對於多線程程序,必須要關閉各個非守護線程。

1234567891011121314151617181920212223

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.

public class TestShutDownHook {

2.

public TestShutDownHook() {

3.

doShutDownWork();

4.

}

5.

private void doShutDownWork() {

6.

Runtime run=Runtime.getRuntime();//當前 Java 應用程序相關的運行時對象。

7.

run.addShutdownHook(new Thread(){ //註冊新的虛擬機來關閉鉤子

8.

@Override

9.

public void run() {

10.

//程序結束時進行的操作

11.

System.out.println(“程序結束調用”);

12.

}

13.

});

14.

}

15.

public static void main(String[] args) {

16.

new TestShutDownHook();

17.

for (int i = 0; i 1000; i++) { // 在這裡增添您需要處理代碼 }

18.

System.out.println(i);

19.

}

20.

}

21.

}

如何關閉java程序

我詳細說一下吧

java程序啟動之後,JVM(java虛擬機)會實例化一個Runtime類,這是一個運行時類實例,包含這個java程序運行的所有信息,一個程序會實例化一個Runtime類且只能實例化一個Runtime類。我們可以通過這個Runtime類實例操作程序的運行。它的exit(int status)方法會終止程序的運行。例:

Runtime.getRuntime().exit(0);

其中參數status表示狀態,0表示正常退出,非0表示異常退出。非0參數有什麼用呢?

addShutdownHook(Thread hook)方法可以將一個Thread可程序的關閉hook(掛/聯繫)起來,程序退出前,會執行這個方法,這樣我們可以根據退出狀態作相應的善後操作。

另外,System.exit(int status)也是調用這個Runtime類實例的退出方法來間接實現程序的退出的。

再加一點,Runtime類可以創建子進程,如下:

Process p=Runtime.getRuntime().exec(“notepad”);

這個語句將會創建一個記事本程序(它是Runtime類創建的子進程)

p.destroy();

這個語句終止剛才創建的子進程。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/297834.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-28 12:16
下一篇 2024-12-28 12:16

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Python3支持多行語句

    Python3是一種高級編程語言,開發人員可以輕鬆地使用該語言編寫簡單到複雜的代碼。其中Python3支持多行語句,方便開發人員編寫複雜的代碼,提高代碼的可讀性和可維護性。 一、使…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29

發表回復

登錄後才能評論