当多线程同时访问同一个资源时 就可能会产生线程安全问题

如何解决线程安全问题

实际上 所有的并发模式在解决线程安全问题时 采用的方案都是 序列化访问共享资源
即在同一时刻 只能有一个线程访问共享资源 也称作 **同步互斥访问**
换句话说 就是在访问共享资源的代码前面加上一个锁 当访问完共享资源后释放锁 再让其他线程继续访问

在 Java 中 提供了两种方式来实现同步互斥访问:synchronized 和 Lock