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()
    #类只能调用到静态的方法,切记
  • 相关阅读:
    OpenMP vs WinSxS
    JIT, dynarec and binary translation
    VC++2010 bug
    控制和释放共享内存块
    分配和释放信号量
    代码列表5.1 (shm.c) 尝试共享内存
    绑定和脱离
    信号量
    每个字段动态添加一个随机数
    最近做了一个红底鞋类电商网站
  • 原文地址:https://www.cnblogs.com/chris-cp/p/3765964.html
Copyright © 2011-2022 走看看