2012-04-21 131 views
3

我有以下的Java代碼:如何啓動不阻塞Java主線程的後臺線程?

public static void main(String[] args) 
{ 
    new Thread(new MyRunnable()).run(); 
    showGUI(); 
} 

我的問題是啓動MyRunnable塊爲主線,造成showGUI不叫,直到它完成運行。我想要做的程序是產生MyRunnable,並允許它在後臺獨立運行,使主線程忘掉它,然後繼續做它想做的事情(如致電showGUI)。

回答

9

run在主線程上執行。 start將創建一個新的線程執行並在該線程上執行它的運行方法。

+2

也就是說,'run'只是一個「常規方法」,不會*啓動一個線程... – 2012-04-21 06:54:35

5

您應該在線程上調用方法start(),而不是run()