当前位置: 代码迷 >> 综合 >> 原子性,可见性,有序性
  详细解决方案

原子性,可见性,有序性

热度:95   发布时间:2024-02-13 09:46:39.0

1. 原子性

- read, load, assign, use, store write 

- 基本类型的访问,读写(long, double 非原子性协定)

- monitorenter, monitorexit (jvm) ; lock, unlock, synchronized

2. 可见性

 - volatile

 - synchronized (对一个变量执行unlock操作之前,必须吧此变量同步回主内存中(store, write)

- final (在构造器中初始化完成后,并且构造器没有把“this”的引用传递出去(避免半初始化状态),其他线程可见;)

3. 有序性

- volatile(禁止指令重排)

- synchronize(持有同一个锁的两个同步代码块只能串行地进行)

  相关解决方案