外贸建站推广公司,软文推广文章范文1000,厦门网站设计公司排名,网页设计接单创建类型
单例模式
饿汉
构建时就创建
懒汉
单线程-访问到的时候才创建多线程-低效率 做法#xff1a;加锁-若未创建则创建-获取资源-解锁 缺点#xff1a;效率低#xff0c;每次访问之前都要加锁#xff0c;资源创建之后不能被同时被多个线程访问多线程-…创建类型
单例模式
饿汉
构建时就创建
懒汉
单线程-访问到的时候才创建多线程-低效率 做法加锁-若未创建则创建-获取资源-解锁 缺点效率低每次访问之前都要加锁资源创建之后不能被同时被多个线程访问多线程-双重判断 做法判断资源未存在-加锁-二次判断资源未存在-创建资源-解锁-获取资源 原因先判断资源是否存在只有第1次判断到资源不存在才需要加锁当资源创建之后就不用再加锁了多线程在大部分情况下可同时访问提高资源访问效率在加锁之后需要再次判断资源是否存在可能在第1次判断和拿到锁的时间间隙中资源已经被其他线程访问和创建了因此需要二次判断。
工厂模式
简单工厂
使用1个工厂类去创建产品类可能需要很多个if else分支去创建不同的产品 缺点违反开闭原则则新增产品就需要修改工厂类
工厂方法
抽象工厂