java的線程thread基礎知識點總結
作者: 鄭曉 分類: java 發(fā)布于: 2013-08-30 17:25 瀏覽:13,316 評論(5)
1.線程Thread是指程序的運行流程。多線程的機制可以同時運行多個程序塊,使程序運行的效率更高,也解決了傳統(tǒng)程序設計語言所無法解決的問題。
2.如果在類里面要激活線程,必須先做好下面兩項準備:
1.此類必須是擴展自Thread類,使自己成為它的子類。
2.線程的處理程序必須編在run()方法內。
3.run()方法是定義在Thread類里面的一個方法,因此把線程的程序代碼編寫在run()方法里,所做的就是對Thread.run()方法的復寫。
4.Runnable接口里聲明了抽象的run()方法,因此必須在實現(xiàn)了Runnable接口的類里明確定義run()方法(必須實現(xiàn)run()方法)。
5.每一個線程,在其創(chuàng)建和消亡之前,均會處于下列五種狀態(tài)之一:創(chuàng)建、就緒、運行、阻塞、終止。
6.暫停狀態(tài)的線程可由下列的情況所產生:
1.該線程調用對象的wait()方法時;
2.該線程本身調用sleep()方法時;
3.該線程和另一個線程join()在一起時。
7.被凍結因素消失的原因有:
1.如果線程是由調用對象的wait()方法所凍結,則該對象的notify()方法被調用時可解除凍結;
2.線程進入休眠sleep狀態(tài),但指定的休眠時間到了。
8.當線程的run()方法運行結束,或是由線程調用它的stop()方法時,由線程進入消亡狀態(tài)。
9.Thread類里的sleep()方法可以用來控制線程的休眠狀態(tài),休眠的時間要視sleep()里的參數(shù)而定。
10.要強制某一線程運行,可以用join()方法。
11.join()方法會拋出InterruptedException的異常,所以編寫時必須把join()方法編寫在try-catch塊內進行異常的捕獲。
12.當多個線程對象操縱同一共享資源時,要使用synchronized關鍵字來進行資源的同步處理,可以是synchronized(this){要同步的代碼塊} 或者是聲明方法時使用synchronized關鍵字。
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉載時請注明出處及相應鏈接。
本文永久鏈接: http://yjfs.org.cn/java-thread-point-summary.html
程序猿,很有前途,如果入門網站架構的話,有推薦的書嗎