summaryrefslogtreecommitdiffstats
path: root/thread-ex1.py
diff options
context:
space:
mode:
authorKyle K <kylek389@gmail.com>2020-10-19 00:33:08 -0500
committerKyle K <kylek389@gmail.com>2020-10-19 00:33:08 -0500
commit1cc2e945634759e16e54d46cb5be447759eef75d (patch)
treeed87bf3385f5b454359cf1f5e859ced029002a5d /thread-ex1.py
parentf690e608f2a7ff76530d1d4603b2786eb18aa3cf (diff)
parent4c196a0a88f52363a2850a3c4bd3fcc4408f35e2 (diff)
downloadPythonPractice-1cc2e945634759e16e54d46cb5be447759eef75d.tar.gz
PythonPractice-1cc2e945634759e16e54d46cb5be447759eef75d.tar.bz2
PythonPractice-1cc2e945634759e16e54d46cb5be447759eef75d.zip
Merge branch 'master' of cryptohash.nl:/home/git/PythonPractice
Diffstat (limited to 'thread-ex1.py')
-rw-r--r--thread-ex1.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/thread-ex1.py b/thread-ex1.py
new file mode 100644
index 0000000..ffafbfd
--- /dev/null
+++ b/thread-ex1.py
@@ -0,0 +1,40 @@
+import threading
+import time
+
+exitFlag = 0
+incrementme = 0
+
+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 + " 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", 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