摘要:
介绍synchronized关键字之前有必要阐述一下线程安全的概念。“非线程安全”会在多个线程对同一个对象中的实例变量进行并发访问时发生,产生的后果就是“脏读”,也就是取到的数据其实是被更改过的,如果是方法内部的私有变量不存在“非线程安全”的问题;而“线程安全”就是获得的实例变量的值是经过同步处理的 阅读全文
摘要:
1.volatile关键字使用: 多线程中存在私有堆栈中的值和公共堆栈中的值不同步的问题。什么意思呢?可能线程在一个地方修改了内存中变量的值,而其它地方线程却从私有堆栈中去读取不一致的变量值。关键字volatile 的主要作用是使在多个线程上可见。也就是,强制从公共堆栈中取得变量的值,而不是从线程私 阅读全文