import threading
import time
import random
tickets = 100
class myThread(threading.Thread):
def __init__(self, threadID, name):
threading.Thread.__init__(self)
self.threadID = threadID
self.name = name
def run(self):
global tickets
while tickets:
threadLock.acquire()
if tickets > 0:
tickets -= 1
print("%s 售出一张 剩余 %d" % (self.name, tickets))
threadLock.release()
time.sleep(random.randint(0, 3))
threadLock = threading.Lock()
threads = []
thread1 = myThread(1, "Thread-1",)
thread2 = myThread(2, "Thread-2",)
thread1.start()
thread2.start()
threads.append(thread1)
threads.append(thread2)
for t in threads:
t.join()
print("Exiting Main Thread")