#Thread.start() //thread start
#Thread.run() //thread main function run
#Thread.join([timeout]) //wait until thread end
from threading import Thread, Lock
import time
count = 10
lock = Lock()
class developer(Thread):
def __init__(self, name): #initialize
Thread.__init__(self)
self.name = name
self.fixed = 0
def run(self): #thread main function
global count
while 1:
#lock.acquire() #lock -> Untie comment, error occurs, I don't know why error occurs...
if count > 0:
count -= 1
#lock.rlease() #unlock -> Untie comment, error occurs, I don't know why error occurs...
self.fixed += 1
time.sleep(0.1)
else:
#lock.release() #unlock -> Untie comment, error occurs, I don't know why error occurs...
break
dev_list = []
for name in ['Mare1', 'Mare2', 'Mare3']:
dev = developer(name) #create thread
dev_list.append(dev)
dev.start() #thread start
for dev in dev_list:
dev.join() #wait
print(dev.name, 'fixed', dev.fixed)
#Mare1 fixed 3
#Mare2 fixed 4
#Mare3 fixed 3
3/18/2014
Python Study, Threading example source code
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment