fly少 2022-06-30 13:43 采纳率: 60%
浏览 163
已结题

为什么饿汉模式是线程安全的?

为什么饿汉模式是线程安全的?

我知道饿汉模式只要类被加载,实例就会立刻创建

但是如果两个线程共同存储这个对象的某个成员到数据库,难道不会出现错误吗?

1.线程A:set数据1到对象(切换线程)
2.线程B:set数据2到对象(切换线程)
3.线程A:add对象中的数据到数据库(此时数据是2,A存入了B的数据)
3.线程B:add对象中的数据到数据库

第三步中的线程A存入的数据不是错的吗?

  • 写回答

3条回答 默认 最新

  • 编号灬9527 2022-06-30 13:57
    关注

    线程安全一般是说你没有经过额外的手段去同步,数据能被各个线程正常操作
    可见性本就是jmm的特性之一,对于你这种场景,没变才是线程不安全的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月9日
  • 已采纳回答 7月1日
  • 创建了问题 6月30日