我很想知道是否可以修改主線程的運行方法,就像在其他線程中一樣,我們重寫運行方法並定義所需的行爲。我可以修改主線程的運行方法嗎
也可以知道我們在main方法中寫入的代碼是否實際上被添加到主線程的run方法中,這是在主線程運行時執行的東西。
我很想知道是否可以修改主線程的運行方法,就像在其他線程中一樣,我們重寫運行方法並定義所需的行爲。我可以修改主線程的運行方法嗎
也可以知道我們在main方法中寫入的代碼是否實際上被添加到主線程的run方法中,這是在主線程運行時執行的東西。
通常,在整個應用壽命期間不使用主要方法。你只是用它來初始化和運行其他線程,然後讓它終止:
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()
方法。
不,您不能覆蓋用於執行main()
方法的線程。這個線程通過JVM魔術出現,它的run()
方法永遠不會被調用(爲了更準確,它的start()
方法永遠不會被調用;您可以在源代碼中看到這種效果的說明)。它只是維持一個定期的線程模型而存在(即每個線程都可以調用Thread.currentThread()
並返回)。
你的問題還不清楚。如果您舉例說明「主線程運行」以及您想如何修改它,可能會有所幫助。 –
有關指導,請參閱[問問]。 – Adam
你是什麼意思?您可以創建傳入可運行對象的新線程。 – RNJ