并發編程簡介
1. 前言
大家好,本節我們來一起學習 Java 并發編程的核心原理。
作為本專題的第一個小節,我們先來了解下什么是并發編程,以及學習并發編程的必要性,及學習過程應該注意的事項。
下面,我們先了解一下 Java 并發編程。
2. 什么是并發編程?
所謂并發編程是指在一臺處理器上 “同時” 處理多個任務。并發是在同一實體上的多個事件。多個事件在同一時間間隔發生。
并發編程,從程序設計的角度來說,是希望通過某些機制讓計算機可以在一個時間段內,執行多個任務。從計算機 CPU 硬件層面來說,是一個或多個物理 CPU 在多個程序之間多路復用,提高對計算機資源的利用率。從調度算法角度來說,當任務數量多于 CPU 的核數時,并發編程能夠通過操作系統的任務調度算法,實現多個任務一起執行。
3. 并發編程的重要性
對于一個 Java 程序員而言,能否熟練掌握并發編程是判斷他優秀與否的重要標準之一。因為并發編程是 Java 語言中最為晦澀的知識點,它涉及操作系統、內存、CPU、編程語言等多方面的基礎能力,更為考驗一個程序員的內功。
并發編程在開發語言中占據著不可替代的位置。
4. 并發編程的特性
并發編程有三大特性:
-
原子性;
-
可見性;
-
有序性。
Tips: 后續的課程知識中,會對這些特性進行詳細的詳解。了解并掌握并發編程的三大特性,非常重要。
5. 為什么學習并發編程?
可以這樣來說,在目前開發市場對于程序員的硬性要求中,并發編程占據了重要的位置,不懂并發編程的從業者不是一名合格的軟件工程師。
尤其是大數據時代的來臨,高并發更成為了家常便飯,工作中,你總是繞不開并發編程的任務,比如說,你想寫個程序,一邊從文件中讀取數據,一邊還要做實時計算… 所以,想成為一名資深的 Java 后端工程師,并發編程必須要牢牢把握。
6. 本套課程 JDK 版本
本套課程使用的 JDK 1.8 的版本。在進行課程代碼實踐的過程中,推薦學習者至少使用 JDK 1.8 及以上版本。
Tips:如果有學習者使用 JDK 1.8 以下的版本,那至少要保證 JDK 版本高于 1.5。因為我們課程的 Lock 接口部分,是 JDK 1.5 版本之后的新特性,所以要至少保證JDK 版本高于 1.5。
7. 學習基礎
在開始學習并發編程之前,學習者需要掌握 JavaSE 的知識,這是學習并發編程的語言基礎,也是 Java 程序員必備的基本功。