Skip to content

Latest commit

 

History

History
35 lines (18 loc) · 764 Bytes

thread-base-008.md

File metadata and controls

35 lines (18 loc) · 764 Bytes

单例模式的8种写法

ID Problem
000 写法对比
001 写法场合

com.geekagain.singletongo ---- 详情请看实现类

写法对比

饿汉 简单 但是没有懒加载

懒汉 有线程安全问题

静态内部类 可用

双重锁检查 推荐用

枚举 最好 写法简单 线程安全有保障 懒加载 避免反序列化破坏单例

场合

如果程序已开始需要加载的资源很多那么就应该使用懒加载

饿汉式 上来加载资源 可能我们都不需要

使用场景

1.全局信息类 只需要一个实例 来记录

2.无状态的记录类 比如日志信息类 只是打日志 除此之外不需要在它的实例上存储任何状态