天天看點

java多線程

Ø 線程是程序的組成部份,一個程序可以擁有多個線程,一個線程必須有一個父程序,可以了解為程序是線程的載體

Ø 是以線程之間可以共享記憶體

Ø 線程運作時的優先級由程序來排程

Ø 程序的生命周期:建立(new)、就緒(Runable)、運作(Runing)、阻塞(Blocked)、死亡

 啟動線程使用start方法,而不是run方法。當線程對象調用了start()方法後,該線程處于就緒狀态,具體什麼時候運作,取決于JVM裡線程排程器的排程(優先級别高的先運作)

 如果希望調用子線程的start()方法後子線程式立即開始執行,可以使用Thread.sleep(1)來讓目前運作的線程睡眠,進而得到1毫秒的執行時間

 線程有三種結束方式:run()方法執行完成,線程正常結束;線程抛出一個未捕獲的Exception或Error;直接調用該線程的stop()方法------不推薦使用

 當主線程結束後,其他線程不受影響

 對于處于死亡狀态的線程不能再調用start()方法,對處于就緒狀态的線程也不能再次調用start()方法

 本文轉自  wbb827  51CTO部落格,原文連結:http://blog.51cto.com/wbb827/1196176