java的線程thread基礎(chǔ)知識點總結(jié)
作者: 鄭曉 分類: java 發(fā)布于: 2013-08-30 17:25 瀏覽:13,387 評論(5)
1.線程Thread是指程序的運行流程。多線程的機制可以同時運行多個程序塊,使程序運行的效率更高,也解決了傳統(tǒng)程序設(shè)計語言所無法解決的問題。
2.如果在類里面要激活線程,必須先做好下面兩項準(zhǔn)備:
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.線程進(jìn)入休眠sleep狀態(tài),但指定的休眠時間到了。
8.當(dāng)線程的run()方法運行結(jié)束,或是由線程調(diào)用它的stop()方法時,由線程進(jìn)入消亡狀態(tài)。
9.Thread類里的sleep()方法可以用來控制線程的休眠狀態(tài),休眠的時間要視sleep()里的參數(shù)而定。
10.要強制某一線程運行,可以用join()方法。
11.join()方法會拋出InterruptedException的異常,所以編寫時必須把join()方法編寫在try-catch塊內(nèi)進(jìn)行異常的捕獲。
12.當(dāng)多個線程對象操縱同一共享資源時,要使用synchronized關(guān)鍵字來進(jìn)行資源的同步處理,可以是synchronized(this){要同步的代碼塊} 或者是聲明方法時使用synchronized關(guān)鍵字。
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/java-thread-point-summary.html
程序猿,很有前途,如果入門網(wǎng)站架構(gòu)的話,有推薦的書嗎