簡體   English   中英

使用Java exec后,進程繼續運行

[英]process continues to run after using Java exec

我有以下方法

public static void disableMobileDate()
{
    try
    {
        Runtime rt = Runtime.getRuntime();
        Process pr = null;
        pr = rt.exec("C:\\Program Files\\Android\\android-sdk\\platform-tools\\adb shell svc data disable");
        System.out.println("### Data disabled on mobile device! ###");
    }
    catch (Exception e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

每次從我的程序中運行此方法時,它都會在任務管理器中創建adb.exe。 adb.exes(多個adb.exe進程)會一直呆在那里,直到我關閉程序。 在成功執行命令后,是否還有使進程結束的方法?

您可以在命令執行后調用pr.destroy()

或者,您可以通過taskkill命令taskkill該進程:

rt.exec("taskkill /F /IM adb.exe")

您可以通過執行pr.destroy()殺死該進程。 但是,您應該聽聽即將出現的更新,一旦它打印出您要查找的內容,就應該終止它。 一種獲取輸出的方法在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM