欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java synchronized加載加鎖-線程可重入詳解及實(shí)例代碼

 更新時(shí)間:2017年02月17日 11:47:18   投稿:lqh  
這篇文章主要介紹了java synchronized加載加鎖-線程可重入詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下

java synchronized加載加鎖-線程可重入

實(shí)例代碼:

public class ReGetLock implements Runnable {

  @Override
  public void run() {
    get();
  }

  public synchronized void get() {
    System.out.println(Thread.currentThread().getId());
    set();
  }

  public synchronized void set() {
    System.out.println(Thread.currentThread().getId());
  }

  public static void main(String[] args) {
    ReGetLock rgl = new ReGetLock();
    new Thread(rgl).start();
  }

}

執(zhí)行代碼的線程到底能不能進(jìn)入到set方法呢?

因?yàn)榫€程rgl先調(diào)用了get方法,獲取到了ReGetLock對(duì)象的鎖,那么當(dāng)線程rgl想進(jìn)入標(biāo)有synchronized 關(guān)鍵字的set方法時(shí),會(huì)被阻塞住,一直等待嗎?

其實(shí)是不會(huì)的,在JAVA里面,當(dāng)某個(gè)線程試圖獲得一個(gè)已經(jīng)由它自己持有的鎖,那么這個(gè)請(qǐng)求會(huì)成功。不然會(huì)出現(xiàn)死鎖。

因此像synchronized 這種加鎖機(jī)制,線程是可重入的。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • SpringCloud負(fù)載均衡實(shí)現(xiàn)定向路由詳情

    SpringCloud負(fù)載均衡實(shí)現(xiàn)定向路由詳情

    這篇文章主要介紹了SpringCloud負(fù)載均衡實(shí)現(xiàn)定向路由詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Java之String、StringBuffer、StringBuilder的區(qū)別分析

    Java之String、StringBuffer、StringBuilder的區(qū)別分析

    今天搞安卓在看書(shū)的時(shí)候遇到了StringBuilder這個(gè)類(lèi)型的東東,有點(diǎn)小迷,不知道它跟string、stringbuffer的關(guān)系式怎么樣的,趕快查閱相關(guān)資料,了解了個(gè)大概,拿出來(lái)分享一下
    2012-11-11
  • springboot配置Jackson返回統(tǒng)一默認(rèn)值的實(shí)現(xiàn)示例

    springboot配置Jackson返回統(tǒng)一默認(rèn)值的實(shí)現(xiàn)示例

    在項(xiàng)目開(kāi)發(fā)中,我們返回的數(shù)據(jù)或者對(duì)象沒(méi)有的時(shí)候一般直接返回的null,那么如何返回統(tǒng)一默認(rèn)值,感興趣的可以了解一下
    2021-07-07
  • 基于Java實(shí)現(xiàn)簡(jiǎn)單的身材計(jì)算程序

    基于Java實(shí)現(xiàn)簡(jiǎn)單的身材計(jì)算程序

    這篇文章主要為大家詳細(xì)介紹了如何利用Java實(shí)現(xiàn)簡(jiǎn)單的身材計(jì)算程序,可以計(jì)算身體的體脂率以及BMI數(shù)值等,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-12-12
  • hadoop實(shí)現(xiàn)grep示例分享

    hadoop實(shí)現(xiàn)grep示例分享

    這篇文章主要介紹了hadoop實(shí)現(xiàn)grep示例,可從文檔中提取包含某些字符串的行,需要的朋友可以參考下
    2014-03-03
  • java項(xiàng)目構(gòu)建Gradle的使用教程

    java項(xiàng)目構(gòu)建Gradle的使用教程

    這篇文章主要為大家介紹了java項(xiàng)目構(gòu)建Gradle的使用教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-03-03
  • Spring-data-redis操作redis cluster的示例代碼

    Spring-data-redis操作redis cluster的示例代碼

    這篇文章主要介紹了Spring-data-redis操作redis cluster的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • 淺談springboot與微服務(wù)架構(gòu)

    淺談springboot與微服務(wù)架構(gòu)

    這篇文章主要介紹了淺談springboot與微服務(wù)架構(gòu),SpringBoot是由 Pivotal團(tuán)隊(duì)提供的框架,其設(shè)計(jì)?的是?來(lái)簡(jiǎn)化新Spring應(yīng)?,初始搭建以及開(kāi)發(fā)過(guò)程,該框架使?了特定的?式來(lái)進(jìn)?配置,需要的朋友可以參考下
    2023-07-07
  • 一個(gè)簡(jiǎn)陋的java圖書(shū)管理系統(tǒng)

    一個(gè)簡(jiǎn)陋的java圖書(shū)管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了一個(gè)簡(jiǎn)陋的java圖書(shū)管理系統(tǒng),簡(jiǎn)單的實(shí)現(xiàn)功能測(cè)試,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 微信公眾號(hào)服務(wù)號(hào)推送模板消息設(shè)置方法(后端java)

    微信公眾號(hào)服務(wù)號(hào)推送模板消息設(shè)置方法(后端java)

    公眾號(hào)時(shí)經(jīng)常會(huì)需要寫(xiě)推送消息,從網(wǎng)上找了一大堆,都不是很全,所以這篇文章主要介紹了微信公眾號(hào)服務(wù)號(hào)推送模板消息設(shè)置方法的相關(guān)資料,需要的朋友可以參考下
    2023-02-02

最新評(píng)論