原子性、可见性、有序性

原子性

  • load, read, assign, use,store, write是原子性的

  • 即:对基本数据的访问读写具有原子性

  • 原子操作就是指不可再分的操作,原子性就是指一段代码象原子一样不可再分,一次只能有一个线程执行这段代码,即代码的执行是互斥的

可见性

  • 一个线程修改了共享变量的值,其他线程能够立即得到修改

  • 内存模型是通过变量修改后的新值同步回主内存(主内存概念参见下一章内存模型)

有序性

  • 在本线程观察,所有操作都是有序的

  • 在其他线程观察这个线程,所有操作都是无序的

  • 多线程通过voatile和synchronized规则保存串行