2012-07-23 37 views
0

要在Android應用程序的後臺運行進程,請使用AsyncTask。有沒有類似的方式在java中的基本cmd行應用程序的後臺運行某些東西?在java中如何在後臺運行進程?

+0

http://stackoverflow.com/questions/1842734/how-to-asynchronously-call-a-method-in-java – kevinc 2012-07-23 03:08:02

+0

Java [concurrency](http://docs.oracle.com/javase/1.5。 0/docs/api/java/util/concurrent/package-summary.html) – adatapost 2012-07-23 03:08:43

+0

http://stackoverflow.com/questions/1842734/how-to-asynchronously-call-a-method-in-java – kevinc 2012-07-23 03:09:02

回答

3

它可以作爲創建擴展Thread類一樣簡單(原諒我,純粹主義者,但這是最近的路:)

new Thread() { 
    public void run() { 
     // Do something here 
    } 
}.start(); 

裏有java.util.concurrent包,一幫票友工具,你應該看看你是否需要做比這更復雜的事情。

+0

我總是將'Runnable'傳遞給'Thread'的構造函數,而不是子類化線程。說實話,我不知道有什麼不同,我認爲這可能是我學會做的第一個方法。 – gsingh2011 2012-07-23 03:13:05

+0

是的,這是我對「純粹主義者」的評論。我大部分時間也使用'Runnable',因爲它更加靈活 - 例如,你的'Runnable'可以擴展你想要的任何其他類。但這樣做可以節省你輸入大約16個字符:) – 2012-07-23 03:15:14

+0

如果你想使用AsyncTask在android sdk文件中做背景。所以你不需要確定,你正確地通知你的用戶界面,一些後臺處理已經完成。如果你想使用線程,使用View.post()來通知UI。不明白爲什麼你不想使用AsyncTask – canisLupusLupus 2016-08-19 10:01:19