python3 thread code example
Example 1: threading python example
import threading
import time
def loop1_10():
for i in range(1, 11):
time.sleep(1)
print(i)
threading.Thread(target=loop1_10).start()
import threading
import time
class MyThread(threading.Thread):
def run(self):
print("{} started!".format(self.getName()))
time.sleep(1)
print("{} finished!".format(self.getName()))
def main():
for x in range(4):
mythread = MyThread(name = "Thread-{}".format(x))
mythread.start()
time.sleep(.9)
if __name__ == '__main__':
main()
Example 2: threading python
import threading
import time
def thread_function(name):
print(f"Thread {name}: starting")
time.sleep(2)
print(f"Thread {name}: finishing")
my_thread = threading.Thread(target=thread_function, args=(1,))
my_thread.start()
time.sleep(1)
my_second_thread = threading.Thread(target=thread_function, args=(2,))
my_second_thread.start()
my_second_thread.join()
Example 3: python thread function
x = threading.Thread(target=thread_function, args=(1,), daemon=True)
x.start()
Example 4: python daemon thread
import threading
import time
shared_resource = False
lock = threading.Lock()
def perform_computation():
print(f'Thread {threading.currentThread().name} - performing some computation....')
shared_resource = True
print(f'Thread {threading.currentThread().name} - set shared_resource to True!')
print(f'Thread {threading.currentThread().name} - Finished!')
time.sleep(1)
def monitor_resource():
while shared_resource == False:
time.sleep(1)
print(f'Daemon Thread {threading.currentThread().name} - Detected shared_resource = False')
time.sleep(1)
print(f'Daemon Thread {threading.currentThread().name} - Finished!')
if __name__ == '__main__':
a = threading.Thread(target=perform_computation, name='A')
b = threading.Thread(target=monitor_resource, name='B', daemon=True)
a.start()
b.start()