java singleton design pattern 多线程的单例模式

来源:互联网 发布:戏曲全国知女明星 编辑:程序博客网 时间:2024/05/21 20:22
public class Singleton{     private static Singleton instance = null;      private Singleton() {  }      private static synchronized void syncInit() {        if (instance == null) {          instance = new Singleton();        }      }      public static Singleton getInstance() {        if (instance == null) {          syncInit();        }        return instance;      }    }  

应用:

通俗讲:单例模式一般在,只想要有一个东西,不可添加的时候我们用到它,例如: QQ聊天,只打开一个对话框不管点击多少次该好友还是一个窗口

第一、控制资源的使用,通过线程同步来控制资源的并发访问;

第二、控制实例产生的数量,达到节约资源的目的。

第三、作为通信媒介使用,也就是数据共享,它可以在不建立直接关联的条件下,让多个不相关的两个线程或者进程之间实现通信。

比如,数据库连接池的设计一般采用单例模式,数据库连接是一种数据库资源

原创粉丝点击