单例模式存在线程安全问题吗?为什么?线程同步的方法?
单例模式存在线程安全问题。 线程安全问题是指公用变量在没有被保护机制时,变量的结果和理论值不一致,这就是线程
同步的方法:
(1)使用lock关键字:通过为给定对象获取互斥锁来实现同步,它可以保证当一个线程在关键代码段的时候,
另一个线程不会进来,它只能等待,等到那个线程对象被释放。
(2)使用synchronized关键字同步
单例模式存在线程安全问题。 线程安全问题是指公用变量在没有被保护机制时,变量的结果和理论值不一致,这就是线程
不安全,相反公用变量在保护机制下工作,就不会出现未知的变化,这样,线程就是安全的。 在使用单例模式创建对象时,如果
多个对象同时被创建,又同时被修改或调用就可能导致理论值和结果值的不一致。此时,线程是不安全的。
同步的方法:
(1)使用lock关键字:通过为给定对象获取互斥锁来实现同步,它可以保证当一个线程在关键代码段的时候,
另一个线程不会进来,它只能等待,等到那个线程对象被释放。
(2)使用synchronized关键字同步