当前位置: 首页 > news >正文

百度网站是百度公司做的吗爱站网关键字挖掘

百度网站是百度公司做的吗,爱站网关键字挖掘,品牌网站建设设计,10000ip网站怎么做在着里我们先了解什么是单例模式。 就是某个类在进程中只能有单个实例,这里的单例模式需要一定的编程技巧,做出限制,一旦程序写的有问题,创建了多个实例,编程就会报错。 如果我们学会了单例模式,这种模式…

在着里我们先了解什么是单例模式。

就是某个类在进程中只能有单个实例,这里的单例模式需要一定的编程技巧,做出限制,一旦程序写的有问题,创建了多个实例,编程就会报错。

如果我们学会了单例模式,这种模式会提高我们的下限。

其中单例模式包含了两种模型,一种是饿汉模型,另一种是懒汉模型,这里的懒汉模型尤为重要,面试也会考。


饿汉模型


这里的单列就是指一个对象,instance。

如代码:

class Singleton {private static Singleton instance = new Singleton();public static Singleton getInstance(){return instance;}
}

这里我们采用 static 来修饰 instance ,因为当初始化的时候只执行一次。

还有当我们想要获取 instance 变量的时候,直接调用getInstance方法就行了,这样我们不用重新在new了。

上述的代码,是饿汉模型。


懒汉模型


这里的懒汉模型不是在程序创建的时候new,而是第一次使用的时候才去创建,这样就可以节省当不用时,我们不用创建的开销。

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public SingletonLazy getinstance(){if(instance == null){instance = new SingletonLazy();}return instance;}}

如上述代码,我们可以看到,就是调用的时候就用。

那么,如果这样是否会引起线程安全问题呢?

答案会引起线程安全问题。

在这里我们当有两个线程同时运行的时候,其线程1和线程2,同时进入if判定,都为true,此时我们就会出现两个,new了,直接就报错了。

那么这里我们加上锁之后,会不会线程安全了呢?

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public static Object locker = new Object();public SingletonLazy getinstance(){if(instance == null){synchronized (locker){instance = new SingletonLazy();}}return instance;}}

这里加上锁也是不安全的,我们具体分析一下。还是两个线程,当出现这种执行顺序时,

如图:

由图中我们可以知道,这种加锁,仍会 new两个。

在这里我们可以采用双重 if 来解决这种线程安全问题。

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public static Object locker = new Object();public SingletonLazy getinstance(){if(instance == null){synchronized (locker){if(instance == null){instance = new SingletonLazy();}}}return instance;}}

如代码,我们在锁里面再加个 if 就可以避免 两个new了,使线程安全。

http://www.tj-hxxt.cn/news/29960.html

相关文章:

  • 企业在线购物网站建设青岛seo排名公司
  • 网站供应商代发怎么做seo如何去做优化
  • 计算机网站开发书籍网络销售怎么做才能有业务
  • 东莞住房建设网站的网商业软文案例
  • 如何让网站自适应手机推广网站怎么制作
  • 良庆网站建设如何自己建网站
  • 手机网站底部代码免费的html网站
  • html网站如何更新整站seo优化
  • wordpress底部美化搜索引擎优化策略包括
  • 新疆网站优化北京网站建设东轩seo
  • 网站的技术维护一般要做些什么google seo优化
  • 武汉哪里做网站好台州seo优化公司
  • 投资网站建设广东seo加盟
  • 找人做网站多少钱百度代理公司怎么样
  • 吉林长春网络公司有哪些杭州seo专员
  • 17我们一起做网站首页图片点击率如何提高
  • wordpress外国主题seo模拟点击算法
  • 怎么知道网站是php培训学校招生营销方案
  • 如何做网站系统合肥百度seo代理
  • WordPress静态文件生成安卓优化清理大师
  • 非商业组织的网站风格知乎关键词排名优化工具
  • 微信公众号登录wordpress网站安徽seo人员
  • 广州网站设计服务商郑州seo优化顾问
  • 购物网站销售管理seo免费外链工具
  • 响应式网站 推广效果地推团队接单平台
  • 浙江省政府 加强政府网站建设苏州seo按天扣费
  • 北京电商网站开发公司域名注册平台有哪些
  • 湖北省建设局网站首页温州seo优化
  • 墙蛙网站谁家做的百度免费打开
  • 传统类型的企业网站网站怎么快速被百度收录