使用局部变量优化双重校验锁
2023-01-29 本文已影响0人
小P_500d

这是加了volatile的双重校验锁,加volatile的目的的是为了禁止new操作的重排序,但是会导致一个问题,后续每次判断helper == null和return的时候都要从内存中读取。
可以使用局部变量优化双重校验锁,减少一次volatile读

这是加了volatile的双重校验锁,加volatile的目的的是为了禁止new操作的重排序,但是会导致一个问题,后续每次判断helper == null和return的时候都要从内存中读取。
可以使用局部变量优化双重校验锁,减少一次volatile读