多线程之整体概括
?
11.Java并發(fā):多線程和java.util.concurrent并發(fā)包總結(jié)
?
?
?
=====
?
11.Java并發(fā):多線程和java.util.concurrent并發(fā)包總結(jié)
引言
前面已經(jīng)針對(duì)Java多線程框架中具體的點(diǎn)介紹了很多了,現(xiàn)在是需要一個(gè)概括性總結(jié)的時(shí)候了,正好從網(wǎng)上找到一張描述java.util.concurrent包組成結(jié)構(gòu)的類(lèi)圖,正好可以對(duì)java多線程中并發(fā)這塊有一個(gè)概覽性總結(jié)。
在轉(zhuǎn)載別人的圖之前先簡(jiǎn)要總結(jié)一下:
一、描述線程的類(lèi):Runable和Thread都屬于java.lang包
二、內(nèi)置鎖synchronized屬于jvm關(guān)鍵字,內(nèi)置條件隊(duì)列操作接口Object.wait()/notify()/notifyAll()屬于java.lang包
二、提供內(nèi)存可見(jiàn)性和防止指令重排的volatile屬于jvm關(guān)鍵字
四、而java.util.concurrent包(J.U.C)中包含的是java并發(fā)編程中有用的一些工具類(lèi),包括幾個(gè)部分:
1、locks部分:包含在java.util.concurrent.locks包中,提供顯式鎖(互斥鎖和速寫(xiě)鎖)相關(guān)功能;
2、atomic部分:包含在java.util.concurrent.atomic包中,提供原子變量類(lèi)相關(guān)的功能,是構(gòu)建非阻塞算法的基礎(chǔ);
3、executor部分:散落在java.util.concurrent包中,提供線程池相關(guān)的功能;
4、collections部分:散落在java.util.concurrent包中,提供并發(fā)容器相關(guān)功能;
5、tools部分:散落在java.util.concurrent包中,提供同步工具類(lèi),如信號(hào)量、閉鎖、柵欄等功能;
以下圖片轉(zhuǎn)自:這里,文章標(biāo)題是:深入淺出 Java Concurrency (1) : J.U.C的整體認(rèn)識(shí)
再次感謝畫(huà)這張圖的作者。
轉(zhuǎn)載于:https://www.cnblogs.com/awkflf11/p/9206246.html
總結(jié)
- 上一篇: Pycharm2018的激活方法或破解方
- 下一篇: restTemplate重定向问题 co