java多執行緒學習筆記

2021-08-15 17:51:13 字數 1530 閱讀 7246

1、執行緒是乙個程式內部不同的執行路徑

2、生成執行緒只要能使用介面就不要繼承,繼承後就不能繼承其他的類,比較死。而且繼承的run方法不能丟擲與父類不同的異常。比如sleep的intterruptedexception

3、start方法只是說我準備好了,進入就緒狀態了,等待排程後才進入執行狀態

4、執行緒控制基本方法

5、執行緒關閉 

1)thread.interrupt 讓執行緒中斷,還可以在interruptexception裡做其他處理

2)stop已經廢棄了,比interrupt還粗暴

3)通過標誌flag不滿足條件關閉run方法,run方法結束,執行緒結束

6、執行緒同步

public class t implements runnable

public synchronized void

m2() throws interruptedexception

public void

run()catch (exception e)

}public static void

main(string args) throws exception

}

結果

b = 1000

如果m2方法去掉synchronized 則輸出b=2000,原因是如果加了synchronized 則表示需要等鎖,但是如果沒有加鎖的方法是可以直接訪問的。

7、生產者消費者

public class producerconsumer 

}class wotou

public string tostring()

}class syncstack catch (interruptedexception e)

}this.notify();

arrwt[index] = wt;

index++;

} public synchronized wotou pop() catch (interruptedexception e)

}this.notify();

index--;

return

arrwt[index];}}

class producer implements runnable

public void

run() catch (interruptedexception e) }}

}class consumer implements runnable

public void

run() catch (interruptedexception e)

system.out

.println(wt);

} }

}

Java多執行緒學習筆記

程序與執行緒 1.程序 執行中的程式 乙個程序至少包含乙個執行緒 2.執行緒 程序中負責程式執行的執行單元 執行緒本身依靠程式進行執行 執行緒是程式中的順序控制流,只能使用分配給程式的資源和環境 3.單執行緒 程式中只存在乙個執行緒,實際上主方法就是乙個主線程 4.多執行緒 在乙個程式中執行多個任務...

java多執行緒學習筆記(二)

8 執行緒的狀態 初始狀態 使用new關鍵字建立乙個執行緒,則執行緒就處理初始狀態。就緒狀態 建立執行緒後,需要我們手動呼叫start方法,來開啟執行緒,start方法會新建乙個執行緒並讓這個執行緒執行run方法。有的同學可能不理解,為什麼不直接呼叫run方法,請記住呼叫run來開啟新執行緒,它只會...

JAVA 多執行緒學習筆記(一)

程序 當你點開乙個qq.exe的時候是乙個程序,點開wechat.exe的時候又是另外的乙個程序。執行緒 當你點開qq.exe的時候,qq這個程式裡面又有許多同時在執行的執行緒。建立多執行緒有3種方式,分別是繼承執行緒類,實現runnable介面,匿名類 第一種實現runnable介面 重寫run方...