計算機的使用者一直以爲他們的計算機可以同時做很多事情。他們認爲當其他的應用程序在下載文件,管理打印隊列或者緩衝音頻的時候他們可以繼續在文字處理程序上工作。甚至對於單個應用程序,他們任然期待它能在在同一時間做很多事情。舉個例子,一個流媒體播放程序必須能同時完成以下工作:從網絡上讀取數字音頻,解壓縮數字音頻,管理播放和更新程序顯示。甚至文字處理器也應該能在忙於重新格式化文本和刷新顯示的情況下同時響應鍵盤和鼠標事件。這樣的軟件就被稱爲併發軟件。
通過Java語言和Java類庫對於基礎併發的支持,JAVA平臺具有完全(from the ground up )支持併發編程的能力。從JDK5.0起,Java平臺還引入了高級併發APIs。這個課程不僅涵蓋了Java平臺基礎併發內容,還對高級併發APIs有一定的闡述。
1 進程和線程
2 線程對象
3 同步
4 活躍度
6 不可變對象
7 高級併發對象
8. 延伸閱讀(待翻譯)
9. 問答和習題 (待翻譯)