1,原子性:
原子性是指一个操作是不可中断的,即使一个线程是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。
i++是原子操作吗?
答案是否定的,两个线程对i++进行操作,线程1读到i++为2,线程2也进行操作读到i++为2,最终i=2,但是两个线程同时对i++进行操作,i应该为3的,所以i++并不是原子操作,不满足原子特性。
2,有序性:
程序实际执行的顺序和你实际书写的顺序未必是一样的。
一条指令的执行是可以分为很多步骤的
3,可见性:
当一个线程修改了某一个共享变量的值,其他线程是否能够立刻指导这个修改。