我創建使用線程在java中還活着多久?
Thread t = new Thread();
t.start();
您使用t.start啓動一個線程()線程; 現在線程還活着多久? 在X(上述問題的答案)秒之後它會走到什麼狀態?
Thread t = new Thread();
t.start();
public void run(){
System.out.println("Threads");
}
如果線程有run()方法會發生什麼?
我創建使用線程在java中還活着多久?
Thread t = new Thread();
t.start();
您使用t.start啓動一個線程()線程; 現在線程還活着多久? 在X(上述問題的答案)秒之後它會走到什麼狀態?
Thread t = new Thread();
t.start();
public void run(){
System.out.println("Threads");
}
如果線程有run()方法會發生什麼?
只要空的Thread.run()
方法不做任何事情並返回,就會按照您描述的方式創建和啓動的線程將處於活動狀態。當線程終止時,t.isAlive()
函數將返回false
。
通常情況下,一個線程會做一些有用的事情,只要run()
方法沒有返回,該線程就會存活。
那麼運行run方法後線程狀態會死掉嗎? – Siva
如果你具體詢問'Thread.getState()'的返回值,那麼它將返回'Thread.State.TERMINATED'。 Java在引用線程狀態時不使用「dead」這個詞。 –
該線程是一個壞例子,因爲它不執行任何操作,即。它執行的'run()'的主體是空的。它會馬上開始並結束。 –
[**如何在Google **上進行搜索](https://support.google.com/websearch/answer/134479?hl=zh-CN) –
您的線程沒有做任何事情,所以答案歸結爲調度延遲。一個需要真正做某件事情的線程會一直存在,直到其工作完成。 – user2357112