Python中run()方法的详细说明
发布时间:2024-01-12 09:08:41
run()方法是多线程中Thread类的一个方法,用于启动新线程并执行指定的函数。
run()方法没有参数,且默认执行线程对象的run()方法。
run()方法的具体作用是执行线程对象初始化时指定的函数或方法。在调用start()方法启动线程时会自动调用run()方法并执行其中的代码。
使用例子如下:
import threading
def print_numbers():
for i in range(1, 6):
print(i)
def print_letters():
for letter in ['a', 'b', 'c', 'd', 'e']:
print(letter)
thread1 = threading.Thread(target=print_numbers)
thread1.start() # 启动线程1
thread1.run() # 执行线程1的run()方法
thread2 = threading.Thread(target=print_letters)
thread2.start() # 启动线程2
thread2.run() # 执行线程2的run()方法
运行以上代码会输出如下结果:
1 2 3 4 5 a b c d e
在这个例子中,我们创建了两个线程对象thread1和thread2,并将print_numbers和print_letters函数作为目标函数传递给线程对象。
我们首先通过调用thread1.start()方法启动线程1,然后调用thread1.run()方法执行线程1的run()方法。run()方法中,线程1依次打印数字1到5。
接下来,我们通过调用thread2.start()方法启动线程2,然后调用thread2.run()方法执行线程2的run()方法。run()方法中,线程2依次打印字母a到e。
需要注意的是,虽然我们可以通过调用run()方法来执行线程的代码,但这样做并不会启动一个新的线程,而是在当前线程上顺序执行run()方法中的代码。因此,需要使用start()方法来启动新线程。
总结起来,run()方法用于执行线程对象初始化时指定的函数或方法,而start()方法用于启动新线程。
