2012-09-06 33 views
-1

我很想知道是否可以修改主線程的運行方法,就像在其他線程中一樣,我們重寫運行方法並定義所需的行爲。我可以修改主線程的運行方法嗎

也可以知道我們在main方法中寫入的代碼是否實際上被添加到主線程的run方法中,這是在主線程運行時執行的東西。

+3

你的問題還不清楚。如果您舉例說明「主線程運行」以及您想如何修改它,可能會有所幫助。 –

+0

有關指導,請參閱[問問]。 – Adam

+0

你是什麼意思?您可以創建傳入可運行對象的新線程。 – RNJ

回答

0

通常,在整個應用壽命期間不使用主要方法。你只是用它來初始化和運行其他線程,然後讓它終止:

class Main { 
    public static void main(String[] args) { 
    new firstThreadImplementation().start(); 
    // new secondThreadImplementation().start(); 
    new initGuiThread().start(); 
    // we are finished here and don't need this thread anymore 
    } 
} 

這樣你就可以直接控制啓動的線程的run()方法。

0

不,您不能覆蓋用於執行main()方法的線程。這個線程通過JVM魔術出現,它的run()方法永遠不會被調用(爲了更準確,它的start()方法永遠不會被調用;您可以在源代碼中看到這種效果的說明)。它只是維持一個定期的線程模型而存在(即每個線程都可以調用Thread.currentThread()並返回)。

相關問題