簡(jiǎn)介:并發(fā)編程是一個(gè)優(yōu)秀的Java工程師必須掌握的核心能力,但同時(shí)并發(fā)編程是 Java 語(yǔ)言中最為晦澀難懂的知識(shí)點(diǎn),它涉及到j(luò)ava虛擬機(jī),CPU,內(nèi)存模型。JUC(java.util.concurrent)包也提供了很多使用的工具,
但是如果不懂得并發(fā)編程背后的原理,開發(fā)的代碼很可能會(huì)出現(xiàn)難以排查的問(wèn)題,本課程不僅有Java并發(fā)編程使用, 還幫同學(xué)們捋順Java并發(fā)編程背后的邏輯關(guān)系以及應(yīng)用場(chǎng)景,最后舉一個(gè)春晚?yè)尲t包的實(shí)戰(zhàn)案例來(lái)幫助同學(xué)們更深度的了解Java并發(fā)編程
第1章 并發(fā)編程的核心--線程
從計(jì)算機(jī)程序的運(yùn)行介紹程序、進(jìn)程、線程分別是什么,以形成對(duì)并發(fā)編程的基本掌握和準(zhǔn)確認(rèn)知,并學(xué)習(xí)三種創(chuàng)建線程的方式,比較三種創(chuàng)建線程的優(yōu)缺點(diǎn)
- 視頻: 1-1 課程介紹 (10:06)
- 視頻: 1-2 什么是多線程 (05:01)
- 視頻: 1-3 并發(fā)和并行的區(qū)別 (02:09)
- 視頻: 1-4 進(jìn)程和線程的區(qū)別 (02:19)
- 視頻: 1-5 線程的創(chuàng)建方式一:繼承Thread類創(chuàng)建一個(gè)線程 (09:10)
- 視頻: 1-6 線程的創(chuàng)建方式二:實(shí)現(xiàn)Runnable接口創(chuàng)建一個(gè)線程 (08:42)
- 視頻: 1-7 線程的創(chuàng)建方式三:實(shí)現(xiàn)Callable接口創(chuàng)建一個(gè)線程 (11:56)
- 視頻: 1-8 三種創(chuàng)建線程的優(yōu)缺點(diǎn)比較 (04:46)
第2章 線程的常用方法
Thread 類中提供了一些方法進(jìn)行線程的操作,設(shè)置和獲取線程的名字,設(shè)置和獲取線程的優(yōu)先級(jí),線程的休眠方法,還會(huì)學(xué)習(xí)線程從創(chuàng)建到死亡的生命周期中的五種狀態(tài)
第3章 線程安全
如果多線程下使用這個(gè)類,不管多線程如何使用和調(diào)度這個(gè)類,這個(gè)類總是表示出正確的行為,這個(gè)類就是線程安全的,要使線程并發(fā)安全,就需要加一些線程的同步手段,本章學(xué)習(xí)兩種為代碼同步的方法,synchronized關(guān)鍵字和Lock鎖
第4章 春晚?yè)尲t包實(shí)戰(zhàn)
春晚?yè)尲t包是典型的并發(fā)場(chǎng)景,我們使用前邊幾章學(xué)習(xí)的基礎(chǔ)知識(shí),還會(huì)學(xué)習(xí)一個(gè)JUC中的類Countdownlatch讓多個(gè)線程同時(shí)開始執(zhí)行,模擬一個(gè)春晚?yè)尲t包的場(chǎng)景,經(jīng)過(guò)實(shí)戰(zhàn)的演練,幫助同學(xué)們更熟悉并發(fā)編程的使用
- 視頻: 4-1 春晚?yè)尲t包實(shí)戰(zhàn) (01:32)
- 視頻: 4-2 使用哪些技術(shù)棧 (01:18)
- 視頻: 4-3 怎樣保證紅包金額拆分的數(shù)據(jù)正確性 (02:29)
- 視頻: 4-4 使用多線程搶紅包 (11:55)
- 視頻: 4-5 問(wèn)題分析 (01:11)
- 視頻: 4-6 使用synchronized關(guān)鍵字為搶紅包過(guò)程加鎖 (01:18)
- 視頻: 4-7 齊頭并進(jìn)-使用CountDownLatch讓多個(gè)線程同時(shí)開始執(zhí)行 (13:30)
- 視頻: 4-8 總結(jié) (01:12)