1. 程式人生 > >第2章 java並行程式設計基礎知識清單

第2章 java並行程式設計基礎知識清單

2.2、初始執行緒:執行緒的基本操作
1、程序執行緒區別。P29
2、執行緒生命週期,waiting, time_waiting狀態區別:new, runnable, blocked, waiting, time_waiting, terminated。P31,32
3、start()方法與run()方法區別,用run()方法啟動一個執行緒會發生什麼:P33
4、stop()方法弊端,以及如何處理? P37
5、下面三個執行緒中斷方法的區別:P39

public void Thread.interrupt();
public boolean Thread.isInterrupted
(); public boolean static Thread.interrupted();

6、sleep()方法被中斷時關於後續處理的注意事項:
P41
7、Object.wait()等待機制(阻塞佇列),如何被喚醒,在呼叫wait()和notify()方法之前需要做什麼?wait()和sleep()方法兩個區別是什麼?P44
8、掛起suspend()方法和繼續執行resume()方法弊端是什麼?如何改進?P44
9、Thread.join()方法實際執行機制是什麼???為什麼因為它,應用程式中不要在Thread物件例項上使用類似wait()、notify()方法?P48
10、Thread.yield(): P50

2.3、 volatile與Java記憶體模型(JMM)
1、volatile關鍵字作用以及與鎖的區別:P51

2.4 執行緒組
1、ThredGroup.activeCount()方法:
2、ThredGroup.list()方法:
3、ThredGroup.stop()方法:
P53頁

2.5 駐守後臺:守護執行緒(Daemon)
1、什麼是守護執行緒:P54

2.6 執行緒優先順序Thread.setPriority()方法: P55

2.7 執行緒安全的概念與synchhronized ['sɪŋkrənaɪzd]
1、synchhronized都可以給什麼加鎖???具體如何使用???
2、synchhronized在給具體的例項物件方法加鎖情況中容易產生的錯誤是什麼?
P60

2.8 隱蔽的錯誤:
1、ArrayList與vector區別: P62
2、重點!併發下hashmap會出現什麼嚴重的問題???
如何解決??? P63
3、Integer i; synchhronized(i) 會出現的問題?P66