threading lock python code example
Example 1: 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 2: threading lock in python
import threading
lock = threading.Lock()
def check_this():
with lock:
"""
acquires lock at the beginning
and releases at the end of this block
"""
a, b = 1, 0
print("locked")
try:
print(a // b)
except Exception as _:
print(_)
print("lock is released")
[threading.Thread(target=also_this).start() for _ in range(2)]