zoukankan      html  css  js  c++  java
  • python 面试相关

    python单例模式:

        Python真的需要单例模式吗?我指像其他编程语言中的单例模式。 

        答案是:不需要!  因为,Python有模块(module),最pythonic的单例典范。模块在在一个应用程序中只有一份,它本身就是单例的,将你所需要的属性和方法,直接暴露在模块中变成模块的全局变量和方法即可   

    #!/usr/bin/env python
    #encoding=utf-8
    
    import threading
    
    #单例类
    class Singleton(object):
        instance = None
        mutex =threading.Lock()
        def __init__(self):
            pass
    
        @ staticmethod  #声明这个是静态方法
        def GetInstance():
            if(Singleton.instance == None):
                Singleton.mutex.acquire()
                if(Singleton.instance == None):
                    print "init the instance"
                    Singleton.instance = Singleton()
                else:
                    print "init the instance already"
                Singleton.mutex.release()
            else:
                print "init the instance already"
            return Singleton.instance
    
    if __name__ == '__main__':
        Singleton.GetInstance()
        Singleton.GetInstance()
        Singleton.GetInstance()
    #类只能调用到静态的方法,切记
  • 相关阅读:
    详解Go变量类型的内存布局
    saltstack手册(含官方pdf)
    Linux之《荒岛余生》(三)内存篇
    linux之网络
    Linux之IO
    【WPF】提高InkAnalyer手写汉字识别的准确率
    mssql 小技巧
    WCF Data Service
    jQuery基础之选择器
    Window程序的安装与部署
  • 原文地址:https://www.cnblogs.com/chris-cp/p/3765964.html
Copyright © 2011-2022 走看看