程序與執行緒
1.程序:執行中的程式
乙個程序至少包含乙個執行緒
2.執行緒:程序中負責程式執行的執行單元
執行緒本身依靠程式進行執行
執行緒是程式中的順序控制流,只能使用分配給程式的資源和環境
3.單執行緒:程式中只存在乙個執行緒,實際上主方法就是乙個主線程
4.多執行緒:在乙個程式中執行多個任務
目的是更好地使用cpu資源
執行緒的實現
一、繼承thread類
public class test }
class mythread extends thread
}
建立乙個自定義類繼承thread類並重寫run()方法
建立好執行緒類後就可以建立執行緒物件,然後通過start()方法去啟動執行緒。本例中建立了兩個執行緒物件,再加上主方法建立的主線程,所以一共有三個執行緒
啟動執行緒的方法是執行start()方法,而不是run()方法,直接通過執行緒物件呼叫run()方法是不會啟動執行緒的,這就跟呼叫普通方法沒有區別,此時不會建立乙個新的執行緒來執行定義的任務。
二、實現runnable介面
public class test }
class myrunnable implements runnable
public void run()
}
通過建立乙個類實現runnable介面,定義了乙個子任務,然後將子任務交由thread去執行。
注意:這種方式必須將runnable作為thread類的引數,然後通過thread的start()方法來建立乙個新執行緒來執行該子任務。如果呼叫runnable的run()方法,跟呼叫普通方法一樣,是不會建立新的執行緒的。
java多執行緒學習筆記
1 執行緒是乙個程式內部不同的執行路徑 2 生成執行緒只要能使用介面就不要繼承,繼承後就不能繼承其他的類,比較死。而且繼承的run方法不能丟擲與父類不同的異常。比如sleep的intterruptedexception 3 start方法只是說我準備好了,進入就緒狀態了,等待排程後才進入執行狀態 4...
java多執行緒學習筆記(二)
8 執行緒的狀態 初始狀態 使用new關鍵字建立乙個執行緒,則執行緒就處理初始狀態。就緒狀態 建立執行緒後,需要我們手動呼叫start方法,來開啟執行緒,start方法會新建乙個執行緒並讓這個執行緒執行run方法。有的同學可能不理解,為什麼不直接呼叫run方法,請記住呼叫run來開啟新執行緒,它只會...
JAVA 多執行緒學習筆記(一)
程序 當你點開乙個qq.exe的時候是乙個程序,點開wechat.exe的時候又是另外的乙個程序。執行緒 當你點開qq.exe的時候,qq這個程式裡面又有許多同時在執行的執行緒。建立多執行緒有3種方式,分別是繼承執行緒類,實現runnable介面,匿名類 第一種實現runnable介面 重寫run方...