zoukankan      html  css  js  c++  java
  • 简易的线程安全图

    线程安全

      1)工作原理:    

        ①:jvm有一个main memory,而每个线程有自己的working memory(线程的工作区)

        ②:一个线程对一个variable(线程共享数据)进行操作时,都要在自己的working memory里面建立一个copy,操作完之后再写入main memory。

        ③:多个线程同时操作同一个variable,就可能会出现不可预知的结果。根据上面的解释,很容易想出相应的scenario。

        ④:而用synchronized的关键是建立一个monitor,这个monitor可以是要修改的variable也可以其他你认为合适的object

        ⑤:通过给这个monitor加锁来实现线程安全,每个线程在获得这个锁之后,要执行完load到working memory -> use&assign -> store到main memory的过程,

          才会释放它得到的锁。这样就实现了所谓的线程安全。

      2)简图:

  • 相关阅读:
    springdataJpa对无主键表或视图查询的支持
    Blynk系列随笔
    arduino系列文章
    Debezium系列随笔
    Kafka系列随笔
    SSAS 收藏
    Saiku 系列
    Mondrian系列
    数据仓库理论学习
    加密解密
  • 原文地址:https://www.cnblogs.com/xiao-lin-unit/p/13863621.html
Copyright © 2011-2022 走看看