
Python
文章平均质量分 90
Python记录
花千树-010
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入理解 Python 的多进程编程 (Multiprocessing)
选择多进程当任务是CPU 密集型,需要并行处理时,优先考虑。适合需要进程隔离的场景,避免共享资源引发的数据竞争。选择多线程适用于I/O 密集型任务,例如文件操作、网络请求。如果任务需要共享内存并发处理,多线程更方便。选择协程在高并发的I/O 密集型任务中(如异步网络请求),协程是最优选择。轻量、性能高,适合现代异步编程。通过合理选择工具,可以在 Python 中充分利用多进程、多线程和协程的优势,打造高性能的并发程序。原创 2025-01-10 11:07:16 · 2577 阅读 · 0 评论 -
深入理解 Python 的多线程实现及应用
多线程是一种并发编程的实现方式,通过创建多个线程,让多个任务可以在单个进程中独立运行。线程共享同一块内存区域,因此可以快速地进行数据交换和任务切换。GIL(Global Interpreter Lock,全局解释器锁)是 CPython 实现的一部分,它保证同一时间只有一个线程执行 Python 字节码。虽然 GIL 简化了 Python 内部对象的管理,但也导致多线程无法利用多核 CPU 进行并行计算。因此,Python 的多线程更多用于 I/O 密集型任务,而不是 CPU 密集型任务。原创 2025-01-10 11:06:17 · 888 阅读 · 0 评论 -
深入理解 Python 的 async 和 await
协程(Coroutine)是一种协作式的并发计算。与传统的多线程并发不同,协程通过主动让出执行权来实现任务的切换,而不是依赖操作系统调度。在 Python 中,协程是由协程函数定义的,并通过async def关键字实现。协程不会立即执行,而是返回一个协程对象,表示任务的执行逻辑和状态。协程对象的执行需要借助事件循环来调度。协程函数是使用async def定义的函数,调用它时不会立即执行,而是返回一个协程对象。# 定义一个协程函数")await asyncio.sleep(1) # 模拟异步等待")原创 2025-01-08 11:00:34 · 1877 阅读 · 0 评论