python multithread library code example
Example 1: threading python example
# A minimal threading example with function calls
import threading
import time
def loop1_10():
for i in range(1, 11):
time.sleep(1)
print(i)
threading.Thread(target=loop1_10).start()
# A minimal threading example with an object
import threading
import time
class MyThread(threading.Thread):
def run(self): # Default called function with mythread.start()
print("{} started!".format(self.getName())) # "Thread-x started!"
time.sleep(1) # Pretend to work for a second
print("{} finished!".format(self.getName())) # "Thread-x finished!"
def main():
for x in range(4): # Four times...
mythread = MyThread(name = "Thread-{}".format(x)) # ...Instantiate a thread and pass a unique ID to it
mythread.start() # ...Start the thread, run method will be invoked
time.sleep(.9) # ...Wait 0.9 seconds before starting another
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() # Wait until thread finishes to exit
Example 3: multithread python3
import timeimport threadingdef calc_square(number): print("Calculate square numbers: ") for i in numbers: time.sleep(0.2) #artificial time-delay print('square: ', str(n*n))def calc_cude(number): print("Calculate cude numbers: ") for i in numbers: time.sleep(0.2) print('cube: ', str(n*n*n))arr = [2,3,8,9]t = time.time()t1 = threading.Thread(target = cal_square,args=(arr,))t2 = threading.Thread(target = cal_cube,args=(arr,))# creating two threads here t1 & t2t1.start()t2.start()# starting threads here parallelly by usign start function.t1.join()# this join() will wait until the cal_square() function is finised.t2.join()# this join() will wait unit the cal_cube() function is finised.print("Successed!")