并发编程
并发编程是指在同一时间处理多个任务的能力,任务可能是独立的,也可能是相互交错执行。并发编程的目标是充分利用 CPU 的多核处理能力,提升程序的执行效率。Python 提供了多种并发编程方法,包括多线程、多进程和异步编程。本文将介绍 Python 中的几种常见并发编程方式。
1. 多线程
多线程是一种常见的并发编程方式,它允许程序在同一进程中同时运行多个线程。Python 的 threading
模块提供了创建和管理线程的功能。
1.1 使用 threading
模块
通过 threading
模块可以轻松地创建和管理线程。下面是一个创建多线程的简单示例:
示例:创建多线程
import threading
import time
def worker(name):
print(f"线程 {
name} 开始工作")
time.sleep(2)
print(f"线程 {
name} 结束工作")
# 创建多个线程
threads = []
for i in range(3):
thread = threading.Thread(target=worker, args=(i,))
threads.append(thread)
thread.start()
# 等待所有线程完成
for thread in threads:
thread.join()
print("所有线程完成")
1.2 线程的同步
由于线程之间是并发执行的,所以需要确保对共享数据的访问是安全的。Python 提供了 Lock
(锁)机制来保证线程的同步。
示例:使用锁机制
import threading
counter = 0
lock = threading.Lock()
def