1.为什么会出现线程安全问题 计算机系统资源分配的单位为进程,同一个进程中允许多个线程并发执行,并且多个线程会共享进程范围内的资源:例如内存地址.当多个线程并发访问同一个内存地址并且内存地址保存的值是可变的时候可能会发生线程安全问题,因此需要内存数据共享机制来保证线程安全问题. 对应到java服务来说,在虚拟中的共享内存地址是java的堆内存,比如以下程序中线程安全问题: public class ThreadUnsafeDemo { private static final ExecutorS…