
python中怎么调用线程
用户关注问题
如何在Python中启动一个新线程?
我想让程序同时执行多个任务,应该如何在Python中启动一个线程?
使用threading模块启动线程
可以通过Python内置的threading模块来启动线程。首先定义一个函数作为线程执行的任务,然后创建Thread对象并将函数作为参数传入,最后调用start()方法启动线程。例如:
import threading
def task():
print('线程执行中')
thread = threading.Thread(target=task)
thread.start()
如何向线程传递参数?
在启动线程时,怎么传递参数给线程执行的函数?
通过args和kwargs参数传递参数给线程函数
创建Thread对象时,可以通过args元组和kwargs字典传递参数。例如:
import threading
def print_numbers(start, end):
for i in range(start, end):
print(i)
thread = threading.Thread(target=print_numbers, args=(1, 5))
thread.start()
如何等待线程执行完成?
启动了线程后,怎么等线程执行完毕,再继续执行主程序?
使用join()方法等待线程完成
Thread对象有join()方法,调用该方法会阻塞主线程,直到被调用线程结束。例如:
import threading
import time
def task():
time.sleep(2)
print('任务完成')
thread = threading.Thread(target=task)
thread.start()
thread.join() # 主线程等待任务线程完成
print('所有线程结束')