/***************************timer instance ************************/ >>> def Putoutnumber(): ID = threading. CurrentThread(). GetName() print ID,' Hello ' >>> def Starttimer(): Timer = threading. Timer(putoutnumber) Timer. Start() >>> starttimer() >>> Thread-1 Hello /**************** inherits thread and semaphore instance ********************/ >>> Import Threading >>> class MyThread (threading. Thread): def __init__ (Self,name,semaphore): Threading. thread.__init__ (Self,none,none,name,none) Self.semaphore = semaphore def run (self): #override run function Self.semaphore.acquire () i = 1 while (I < 3): Print self.getname (), ' print ', I i = i + 1 Self.semaphore.release () >>> def startTask (): Semaphore = Threading. Semaphore () Thread_0 = MyThread ("Thread_0", semaphore) Thread_1 = MyThread ("Thread_1", semaphore) Thread_0.start () Thread_1.start () >>> StartTask () >>> THREAD_0 Print 1 THREAD_0 Print 2 Thread_1 Print 1 Thread_1 Print 2 Communication between/********************* processes ************************/ >>> class Managerthread (threading. Thread): def __init__(self,name,event): Threading. Thread. __init__(self,none,none,name,None ) Self. Event = Event def run(self): #override Run function print self. GetName(),' say ',' Go ' Self. Event. Set() >>> class Peoplethread (threading. Thread): def __init__(self,name,event): Threading. Thread. __init__(self,none,none,name, None ) Self. Event = Event def run(self): Self. Event. Wait() print self. GetName(),' Start ',' Go ' >>> def startTask(): Event = threading. Event() M_thread = managerthread("Manager",event) P_thread = peoplethread("People",event) P_thread. Start() M_thread. Start() /************************* Test ****************************/ >>> startTask() >>> Manager say go People start go |