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