在 Python 中启动线程
Fumbani Banda
2023年1月30日
2021年12月4日
本教程将介绍在 Python 中创建和启动线程的 threading
模块。
线程定义
线程是一组需要执行的操作。运行线程意味着程序将同时运行两个或更多的东西。一个线程只能在 CPU 的一个内核中运行。线程是关于我们如何处理一个 CPU 内核中的线程。
Python 中的线程实现
Python 使用 threading
模块在程序中实现线程。你可以创建一个 Thread
实例,然后调用它来启动一个单独的线程。
当你创建 Thread
实例时,你将传入一个函数和该函数的参数列表。在这种情况下,你告诉 Thread
运行函数 thread_function()
并将其 1 作为参数传递。
thread_function()
记录一些消息并休眠两秒钟。
#python 3.x
from threading import Thread
import time
import logging
def thread_function(name):
logging.info("Thread %s: starting",name)
time.sleep(2)
logging.info("Thread %s: finishing",name)
if __name__ == "__main__":
format = "%(asctime)s: %(message)s"
logging.basicConfig(format=format, level=logging.INFO,
datefmt="%H:%M:%S")
thread = Thread(target = thread_function,args = (1,))
thread.start()
logging.info("Exiting")
输出:
10:23:58: Thread 1: starting
10:23:58: Exiting
10:24:00: Thread 1: finishing
线程可视化
该程序的流程如下。一旦你调用 start()
,它就会触发 thread_function()
并在一个单独的线程中运行。主程序也作为另一个线程并行运行。
Author: Fumbani Banda