當(dāng)前位置:博客首頁>>java >> 閱讀正文

java的線程thread基礎(chǔ)知識點總結(jié)

作者: 鄭曉 分類: java 發(fā)布于: 2013-08-30 17:25 瀏覽:13,159 評論(5)


1.線程Thread是指程序的運行流程。多線程的機制可以同時運行多個程序塊,使程序運行的效率更高,也解決了傳統(tǒng)程序設(shè)計語言所無法解決的問題。

2.如果在類里面要激活線程,必須先做好下面兩項準備:
1.此類必須是擴展自Thread類,使自己成為它的子類。
2.線程的處理程序必須編在run()方法內(nèi)。

3.run()方法是定義在Thread類里面的一個方法,因此把線程的程序代碼編寫在run()方法里,所做的就是對Thread.run()方法的復(fù)寫。

4.Runnable接口里聲明了抽象的run()方法,因此必須在實現(xiàn)了Runnable接口的類里明確定義run()方法(必須實現(xiàn)run()方法)。

5.每一個線程,在其創(chuàng)建和消亡之前,均會處于下列五種狀態(tài)之一:創(chuàng)建、就緒、運行、阻塞、終止。

6.暫停狀態(tài)的線程可由下列的情況所產(chǎn)生:
1.該線程調(diào)用對象的wait()方法時;
2.該線程本身調(diào)用sleep()方法時;
3.該線程和另一個線程join()在一起時。

7.被凍結(jié)因素消失的原因有:
1.如果線程是由調(diào)用對象的wait()方法所凍結(jié),則該對象的notify()方法被調(diào)用時可解除凍結(jié);
2.線程進入休眠sleep狀態(tài),但指定的休眠時間到了。

8.當(dāng)線程的run()方法運行結(jié)束,或是由線程調(diào)用它的stop()方法時,由線程進入消亡狀態(tài)。

9.Thread類里的sleep()方法可以用來控制線程的休眠狀態(tài),休眠的時間要視sleep()里的參數(shù)而定。

10.要強制某一線程運行,可以用join()方法。

11.join()方法會拋出InterruptedException的異常,所以編寫時必須把join()方法編寫在try-catch塊內(nèi)進行異常的捕獲。

12.當(dāng)多個線程對象操縱同一共享資源時,要使用synchronized關(guān)鍵字來進行資源的同步處理,可以是synchronized(this){要同步的代碼塊} 或者是聲明方法時使用synchronized關(guān)鍵字。

? ? ? ?

本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。

本文永久鏈接: http://www.yjfs.org.cn/java-thread-point-summary.html

java的線程thread基礎(chǔ)知識點總結(jié):目前有5 條留言

用戶評論頭像 獨輪電動車發(fā)表于 2013年09月11日 11:16[回復(fù)]

程序猿,很有前途,如果入門網(wǎng)站架構(gòu)的話,有推薦的書嗎

用戶評論頭像 昌盛電子游戲機發(fā)表于 2013年09月10日 17:54[回復(fù)]

這里不錯的說,支持這里

用戶評論頭像 面子至上發(fā)表于 2013年09月10日 11:58[回復(fù)]

學(xué)習(xí)了?。。?!謝謝分享

用戶評論頭像 情侶網(wǎng)名發(fā)表于 2013年09月08日 18:25[回復(fù)]

想往這方面發(fā)展,不過好麻煩啊

用戶評論頭像 www.lianxin818.com發(fā)表于 2013年09月04日 18:13[回復(fù)]

很多有意義的內(nèi)容,收藏備訪!
癸巳年(蛇)七月廿九 2013-9-4

發(fā)表評論

change vcode