· 5 years ago · Feb 02, 2020, 11:46 AM
1import time, random, queue, threading
2
3url_list = queue.Queue()
4urls = [
5 "google.com",
6 "facebook.com",
7 "tritter.com",
8 "instagram.com",
9 "gmail.com",
10 "youtube.com",
11]
12
13for i in urls:
14 url_list.put(i)
15
16def queue_worker():
17 print(threading.current_thread().name)
18
19 while not url_list.empty():
20 current_url = url_list.get()
21 print("working on:", current_url)
22
23 time.sleep(random.randint(2,10))
24
25 print("Work done!", current_url)
26
27 url_list.task_done()
28
29t1 = threading.Thread(target=queue_worker)
30t2 = threading.Thread(target=queue_worker)
31t3 = threading.Thread(target=queue_worker)
32t4 = threading.Thread(target=queue_worker)
33
34t1.start()
35t2.start()
36t3.start()
37t4.start()
38
39url_list.join()
40print("Main Thread ends")