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

關于synchronized有趣的同步問題

 更新時間:2019年01月09日 15:00:53   作者:李燦輝  
今天小編就為大家分享一篇關于關于synchronized有趣的同步問題,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

在多線程對一個整數(shù)進行自增操作時,需要用synchronized進行同步。然而,如果synchronized的對象選取的不合適的話,就無法實現(xiàn)同步的效果。如下面的例子。

public class SyncThreadTest extends Thread {
  public static Integer count = 0;
  private static final int TIMES = 10000;
  public SyncThreadTest(){
    super("SyncThread");
  }
  @Override
  public void run(){
    synchronized (count){
      for (int i = 0; i < TIMES; i ++){
        count++;
      }
    }
  }
  public static void main(String[] args) throws InterruptedException{
    SyncThreadTest t1 = new SyncThreadTest();
    SyncThreadTest t2 = new SyncThreadTest();
    t1.start();
    t2.start();
    t1.join();
    t2.join();
    System.out.println(count);
  }
}

在上面的例子中,選取了自增的變量作為同步的對象。啟動2個線程,各自對count自增10000次。最后的結果,count的值卻不是20000次。

原因在于count對象一直處于改變當中,起不到兩個線程的鎖的作用。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

相關文章

  • Maven的幾個常用plugin

    Maven的幾個常用plugin

    本文主要介紹了Maven的幾個常用plugin。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • Docker和?Containerd?的區(qū)別解析

    Docker和?Containerd?的區(qū)別解析

    containerd?是一個來自?Docker?的高級容器運行時,并實現(xiàn)了?CRI?規(guī)范,它是從?Docker?項目中分離出來,之后?containerd?被捐贈給云原生計算基金會(CNCF)為容器社區(qū)提供創(chuàng)建新容器解決方案的基礎,這篇文章主要介紹了Docker和?Containerd?的區(qū)別,需要的朋友可以參考下
    2024-03-03
  • java解析Excel文件的方法實例詳解

    java解析Excel文件的方法實例詳解

    在日常工作中,我們常常會進行文件讀寫操作,除去我們最常用的純文本文件讀寫,更多時候我們需要對Excel中的數(shù)據(jù)進行讀取操作,下面這篇文章主要給大家介紹了關于java解析Excel文件的方法,需要的朋友可以參考下
    2022-06-06
  • Springboot基于enable模塊驅動的實現(xiàn)

    Springboot基于enable模塊驅動的實現(xiàn)

    這篇文章主要介紹了Springboot基于enable模塊驅動的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • spring源碼下載、編譯、debug的詳細教程

    spring源碼下載、編譯、debug的詳細教程

    這篇文章主要介紹了spring源碼下載、編譯、debug的詳細教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • java中instanceof和getClass()的區(qū)別分析

    java中instanceof和getClass()的區(qū)別分析

    本篇文章介紹了,在java中instanceof和getClass()的區(qū)別分析。需要的朋友參考下
    2013-04-04
  • Spring Boot支持HTTPS步驟詳解

    Spring Boot支持HTTPS步驟詳解

    這篇文章主要介紹了Spring Boot支持HTTPS步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • java socket實現(xiàn)聊天室 java實現(xiàn)多人聊天功能

    java socket實現(xiàn)聊天室 java實現(xiàn)多人聊天功能

    這篇文章主要為大家詳細介紹了java socket實現(xiàn)聊天室,java實現(xiàn)多人聊天功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • SpringBoot修改內置tomcat版本的操作步驟

    SpringBoot修改內置tomcat版本的操作步驟

    生產(chǎn)環(huán)境使用的外部部署Tomcat還是內置Tomcat由于版本安全漏洞,往往需要升級到指定的安全版本,本文演示一下SpringBoot升級內置的Tomcat版本,感興趣的小伙伴跟著小編一起來看看吧
    2024-07-07
  • SpringAop @Aspect織入不生效,不執(zhí)行前置增強織入@Before方式

    SpringAop @Aspect織入不生效,不執(zhí)行前置增強織入@Before方式

    這篇文章主要介紹了SpringAop @Aspect織入不生效,不執(zhí)行前置增強織入@Before方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12

最新評論