黑马程序员技术交流社区

标题: 单例设计模式有同步么,需要注意什么了? [打印本页]

作者: 潘多拉    时间: 2014-8-28 16:16
标题: 单例设计模式有同步么,需要注意什么了?
单例设计模式有同步么,需要注意什么了?锁?如何提高代码运行效率

作者: WJN_YES    时间: 2014-8-28 17:14
饿汉式单例模式有同步,下面是看毕老师视频的一些总结
延迟加载的单例设计模式
//懒汉式
特点是:实例的延迟加载。多线程访问的时候会有安全问题,可以加同步解决,加同步代码块和同步函数都行,但是有些低效。用双重判断方式可以解决效率问题,加同步的时候使用的锁是哪一个?该类所属的字节码文件对象
class Single
{
        private static Single s = null;
        private Single(){}
        public static  Single getInstance()
        {
                if(s==null){
                        synchronized(Single.class){
                                if(s==null)
                                        s = new Single();
                                return s;
                        }
                }
        }
}


作者: WJN_YES    时间: 2014-8-28 17:17
那个是懒汉式
作者: 夜半风    时间: 2014-8-28 19:31
一般都用懒汉式的
作者: 小乖乖灬浩歌    时间: 2014-8-28 21:41
2种模式  饿汉式 懒汉式  懒汉式需要同步
作者: 七弟    时间: 2014-8-28 22:16
学习一下
作者: hsy    时间: 2014-8-29 08:48
懒汉式就是所谓的延迟加载,并且懒汉式还有线程安全问题,所以要同步加锁,锁在方法上就行
作者: SmallRooker    时间: 2014-8-30 09:06
一般都用饿汉式,没用过懒汉式,都是拿过来就用~
作者: @for    时间: 2014-8-30 13:28
懒汉式有同步,饿汉式不需要同步,网上还有第三种方式,忘了咋说的了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2