《每日一练》-实现一个单例模式
《每日一练》-实现一个单例模式
23中设计模式
全局唯一性:线程安全
延迟加载,使用前是否初始化?线程安全?(本身就是矛盾的?)
没有延迟加载,有问题早发现?使用过程,创建过程;
饿汉式,懒汉式?new操作很重要?
getInstance效率太低,由于加了锁。不加锁又会不安全。 -》 改变锁的位置; -》 还是不安全。-> 双重检测(单例陷阱) v
new不是原子操作;alloc可能会下沉;指令重排,具有概率性;X86,与cpu是有关的。java,c++,c#有做相关的优化
还有东西:静态内部变量;
原创
2021-05-07 10:05:41 ·
108 阅读 ·
0 评论