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

新闻头条今日要闻国内新闻最新seo销售代表招聘

新闻头条今日要闻国内新闻最新,seo销售代表招聘,杭州网络设计公司有哪些,phonegap下载Python单例模式 1、使用模块(推荐)2、使用装饰器3、使用new()方法 单例模式是最常见的一种设计模式,该模式确保系统中一个类仅有一个实例 常用的三种实现方式如下: 1、使用模块(推荐) 模块是天然单例的&a…

Python单例模式

    • 1、使用模块(推荐)
    • 2、使用装饰器
    • 3、使用new()方法


单例模式是最常见的一种设计模式,该模式确保系统中一个类仅有一个实例

常用的三种实现方式如下:

1、使用模块(推荐)


模块是天然单例的,因为模块只会被加载一次,加载后,其他脚本若导入使用时,会从sys.modules中找到已加载好的模块,多线程下也是如此

编写Singleton.py脚本:

class MySingleton():def __init__(self, name, age):self.name = nameself.age = age

其他脚本导入使用:

from Singleton import MySingletonsingle1 = MySingleton('Tom', 18)
single2 = MySingleton('Bob', 20)print(single1 is single2)     # True

2、使用装饰器

# 编写一个单例模式的装饰器,来装饰哪些需要支持单例的类
from threading import RLockdef Singleton(cls):single_lock = RLock()instance = {}def singleton_wrapper(*args, **kwargs):with single_lock:if cls not in instance:instance[cls] = cls(*args, **kwargs)return instance[cls]return singleton_wrapper@Singleton
class MySingleton(object):def __init__(self, name, age):self.name = nameself.age = age# 该方式线程不安全,需要加锁校验single1 = MySingleton('Tom', 18)
single2 = MySingleton('Bob', 20)print(single1 is single2)     # True

3、使用new()方法


Python的__new__()方法是用来创建实例的,可以在其创建实例的时候进行控制

class MySingleton(object):single_lock = RLock()def __init__(self, name, age):self.name = nameself.age = agedef __new__(cls, *args, **kwargs):with MySingleton.single_lock:if not hasattr(MySingleton, '_instance'):MySingleton._instance = object.__new__(cls)return MySingleton._instancesingle1 = MySingleton('Tom', 18)
single2 = MySingleton('Bob', 20)print(single1 is single2)     # True
http://www.mnyf.cn/news/15703.html

相关文章:

  • 石家庄企业做网站白酒最有效的推广方式
  • 布吉网站建设seo排名的影响因素有哪些
  • 小程序开发费用明细表seo官网
  • 怎么创建个人网站c盘优化大师
  • 宿州网站制作建设百度快照手机入口
  • 网站内页seo查询微信营销的方法
  • wordpress 页面内容苏州seo关键词优化报价
  • 国外网页设计网站数字营销是干啥的
  • 深圳网站建设怎样做最新黑帽seo教程
  • 广州专做优化的科技公司seo搜索引擎实训心得体会
  • 什么网站能接工地做江苏seo推广
  • b2c网站策划书baidu com百度一下
  • 慈溪做无痛同济 网站谷歌seo优化
  • 色块布局网站首页模板如何注册自己的网站
  • 厦门企业网站制作网站推广怎么做
  • 橙云网站建设seo是什么公司
  • hulu网站在中国做内容吗网络营销做得好的公司
  • 关于网站建设的论文提纲朋友圈信息流广告投放价格
  • 优化公司网站网络seo推广培训
  • 视频网站做视频节目赚钱吗苏州seo优化
  • 公司想建个网站怎么弄2022年最新新闻播报稿件
  • 网站后台传图片传不了广告发布平台app
  • 企业网站制作 西安武汉网络推广平台
  • 网站建设品牌排名优化外包公司
  • 网站开发问题论文长沙seo公司
  • 公司在百度做网站seo查询爱站
  • 北京高端网站建设公司哪家好企业培训课程名称
  • 萧山网站建设站长工具浪潮
  • 不显示修改的wordpress排名优化关键词
  • 新手学做网站txt下载外贸网站制作