日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 线程由浅入深_由浅入深,Java 并发编程中的 Synchronized(一)

發布時間:2024/9/27 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 线程由浅入深_由浅入深,Java 并发编程中的 Synchronized(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

synchronized 作用

synchronized 關鍵字是 Java 并發編程中線程同步的常用手段之一。

1.1 作用:

確保線程互斥的訪問同步代,鎖自動釋放,多個線程操作同個代碼塊或函數必須排隊獲得鎖,

保證共享變量的修改能夠及時可見,獲得鎖的線程操作完畢后會將所數據刷新到共享內存區;

不解決重排序,但保證有序性。

1.2 用法:

修飾實例方法synchronized 關鍵詞作用在方法的前面,用來鎖定方法,其實默認鎖定的是 this 對象。

修飾靜態方法synchronized 還是修飾在方法上,不過修飾的是靜態方法,等價于鎖定的是 Class 對象。

修飾代碼塊用法是在函數體內部對于要修改的參數區間用 synchronized 來修飾,相比與鎖定函數這個范圍更小,可以指定鎖定什么對象。

總結:

synchronized 修飾的實例方法,多線程并發訪問時,只能有一個線程進入,獲得對象內置鎖,其他線程阻塞等待,但在此期間線程仍然可以訪問其他方法。

synchronized 修飾的靜態方法,多線程并發訪問時,只能有一個線程進入,獲得類鎖,其他線程阻塞等待,但在此期間線程仍然可以訪問其他方法。

synchronized 修飾的代碼塊,多線程并發訪問時,只能有一個線程進入,根據括號中的對象或者是類,獲得相應的對象內置鎖或者是類鎖

每個類都有一個類鎖,類的每個對象也有一個內置鎖,它們是互不干擾的,也就是說一個線程可以同時獲得類鎖和該類實例化對象的內置鎖,當線程訪問非 synchronzied 修飾的方法時,并不需要獲得鎖,因此不會產生阻塞。

總結

以上是生活随笔為你收集整理的java 线程由浅入深_由浅入深,Java 并发编程中的 Synchronized(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。