class SMSCDriver: cv_smpp = Condition() smscDriver = None smscDriverThread = None started = False def __init__(self, profilePath): self.__class__.cv_smpp.acquire() if self.__class__.smscDriver == None: try: self.__class__.smscDriver = _SMSCDriver(profilePath) self.__class__.smscDriverThread = Thread( self.__class__.smscDriver, "SMSCDriver") # self.__class__.smscDriverThread.setDaemon(True) except Exception, ex: logger.error('Error loading SMSC Profile : %s, reason: %s' % (profilePath, ex)) raise logger.debug('SMSC Server starting') self.__class__.smscDriverThread.start() logger.info('SMSC Server started in the thread %s' % (self.__class__.smscDriverThread.getName())) self.__class__.started = True self.__class__.cv_smpp.release()
def __init__(self, verbose=None): _Verbose.__init__(self, verbose) self.__cond = Condition(Lock()) self.__flag = False
def __init__(self, value=1, verbose=None): assert value >= 0, "Semaphore initial value must be >= 0" _Verbose.__init__(self, verbose) self.__cond = Condition(Lock()) self.__value = value
def __init__(self, value=1, verbose=None): if value < 0: raise ValueError("Semaphore initial value must be >= 0") _Verbose.__init__(self, verbose) self.__cond = Condition(Lock()) self.__value = value