A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

用同步解决时,为什么会低效?
为什么双重判断可以解决这个问题?

2 个回复

倒序浏览
class Danlil {
        private static Danlil d = null;

        private Danlil() {
        }

        public static/* Synchronizer */Danlil method() {
        //        if (d == null) {@面试:双重判断可以体改效率。
                        // Synchronizer(Danlil.class){
                        if (d == null)
                                d = new Danlil();
                        // }
        //        }
                return d;
        }
低效是因为访问方法时要判断锁,所以低效了,一重判断式解决安全问题,双重判断式提高效率,第二重判断后,就不用判断锁和下面的if,如果没有双重判断,那么即会判断锁又判断下面的if,有了双重判断也就是上面的if,就不用再次判断锁和下面的if了
回复 使用道具 举报
她只是过客 发表于 2014-9-6 13:46
class Danlil {
        private static Danlil d = null;

搜噶,谢谢、、、、、、
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马