最近才开始系统学习设计模式。。。有点落伍,爱好者们在这里一起讨论吧。这里主要关注的是实现以及存在的问题,单一性是使用singleton的原因,singleton网上的实现一般有这么几种,以下代码从网上摘抄,主要是为了讨论,所有权归原作者所有,请保持原有作者的注释。:)
一,教科书上的标准实现,存在的问题是内存泄漏,多线程方式有问题
二,自动回收-缺陷只能一对一,多线程方式有问题
三,模版方式-缺陷不支持多线程
四,线程安全
五,超简单方法-有人说这个不支持多线程,个人觉得应该没问题吧,在这里求证一下
posted on 2007-01-29 10:24 龙仪 阅读(1108) 评论(4) 编辑 收藏
最后一个支持多线程吧。 不然所有的函数类的全局变量都不是线程安全的,我一般也就用最后一种方法。
支持支持
最后一个不是多线程安全的 因为静态变量的构造函数会在第一次进入函数时被调用,可能会被调用两次。 不过可以在主线程中先调用一次,保证初始化成功后,就没有问题了。
提醒一下,标题中的songleton写错了
Powered by: Copyright © 龙仪