帮助新人分分钟搞定Java单例模式!
达内JAVA培训
共 1768字,需浏览 4分钟
·
2021-01-23 09:46
单例模式
外部资源:每台计算机有若干个打印机,但只能有一个PrinterSpooler,以避免两个打印作业同时输出到打印机。
Windows的Task Manager(任务管理器)就是很典型的单例模式(这个很熟悉吧),想想看,是不是呢,你能打开两个windows task manager吗?
多线程的线程池的设计一般也是采用单例模式,这是由于线程池要方便对池中的线程进行控制。
天生线程不安全:这种方式是最基本的实现方式,这种实现最大的问题就是不支持多线程。因为没有加锁 synchronized,所以严格意义上它并不算单例模式。
天生线程不安全:这种方式具备很好的 lazy loading,能够在多线程中很好的工作,但是,效率很低,99% 情况下不需要同步。
评论