diff options
author | Kyle K <kylek389@gmail.com> | 2020-10-07 21:00:43 -0500 |
---|---|---|
committer | Kyle K <kylek389@gmail.com> | 2020-10-07 21:00:43 -0500 |
commit | 4c196a0a88f52363a2850a3c4bd3fcc4408f35e2 (patch) | |
tree | 495ec9fcd6bbb47f9bc97be972b48f38c00bad0f | |
parent | bd742a42920b0e2a9893d5b377e9e746aaeedd2c (diff) | |
download | PythonPractice-4c196a0a88f52363a2850a3c4bd3fcc4408f35e2.tar.gz PythonPractice-4c196a0a88f52363a2850a3c4bd3fcc4408f35e2.tar.bz2 PythonPractice-4c196a0a88f52363a2850a3c4bd3fcc4408f35e2.zip |
thread.join()
-rw-r--r-- | thread-ex1.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/thread-ex1.py b/thread-ex1.py index 522f535..ffafbfd 100644 --- a/thread-ex1.py +++ b/thread-ex1.py @@ -2,32 +2,39 @@ import threading import time exitFlag = 0 +incrementme = 0 -class myThread (threading.Thread): +class myThread(threading.Thread): def __init__(self, threadID, name, counter): threading.Thread.__init__(self, name=name) self.threadID = threadID #self.name = name self.counter = counter def run(self): - print("Starting " + self.name) - print_time(self.name, 5, self.counter) + print("Starting " + self.name + " at: " + time.ctime(time.time())) + print_time(self.name, self.counter, 1) # delay fixed to 1 second for simplicity print("Exiting " + self.name) def print_time(threadName, counter, delay): + global incrementme while counter: if exitFlag: threadName.exit() time.sleep(delay) print("%s: %s" % (threadName, time.ctime(time.time()))) counter -= 1 + incrementme = incrementme + 1 # Create new threads -thread1 = myThread(1, "Thread-One", 1) -thread2 = myThread(2, "Thread-Two", 2) +thread1 = myThread(1, "Thread-One", 5) +thread2 = myThread(2, "Thread-Two", 10) # Start new Threads thread1.start() thread2.start() +thread1.join() # .join() will wait for thread to finish, otherwise script will race till the end and result will be 0 +thread2.join() +print(f"result is: {incrementme}") + print("End of Program. Exiting Main Thread")
\ No newline at end of file |