如何在Python中创建一个新线程
Python中的线程是进程中的一个实体,可以安排执行。简而言之,线程是由计算机执行的计算过程。它是程序中可以独立于其他代码执行的一系列此类指令。
在Python中,有两种创建新线程的方法。在本文中,我们还将使用Python中的线程模块。以下是这些进程的详细列表:
1.使用类创建Python线程
下面有一个编码示例,后面是使用Python中的类创建新线程的代码说明。
Python3
# import the threading module
import threading
class thread(threading.Thread):
def __init__(self, thread_name, thread_ID):
threading.Thread.__init__(self)
self.thread_name = thread_name
self.thread_ID = thread_ID
# helper function to execute the threads
def run(self):
print(str(self.thread_name) +" "+ str(self.thread_ID));
thread1 = thread("GFG", 1000)
thread2 = thread("GeeksforGeeks", 2000);
thread1.start()
thread2.start()
print("Exit")
Python3
from threading import Thread
from time import sleep
# function to create threads
def threaded_function(arg):
for i in range(arg):
print("running")
# wait 1 sec in between each thread
sleep(1)
if __name__ == "__main__":
thread = Thread(target = threaded_function, args = (10, ))
thread.start()
thread.join()
print("thread finished...exiting")
输出:
GFG 1000
GeeksforGeeks 2000
Exit
现在让我们看看我们在代码中做了什么。
- 我们创建了线程类的子类。
- 然后我们重写线程类的__init__函数。
- 然后我们重写run方法来定义线程的行为。
- start() 方法启动一个Python线程。
2.使用函数创建Python线程
下面的代码显示了使用函数创建新线程:
Python3
from threading import Thread
from time import sleep
# function to create threads
def threaded_function(arg):
for i in range(arg):
print("running")
# wait 1 sec in between each thread
sleep(1)
if __name__ == "__main__":
thread = Thread(target = threaded_function, args = (10, ))
thread.start()
thread.join()
print("thread finished...exiting")
输出:
running
running
running
running
running
running
running
running
running
running
thread finished...exiting
所以我们在上面的代码中做了什么,
- 我们定义了一个函数来创建一个线程。
- 然后我们使用 threading 模块创建一个线程,该线程调用该函数作为其目标。
- 然后我们使用 start() 方法来启动Python线程。