Python多线程
文章平均质量分 59
大帅不是我
你的坚持,终将美好。
展开
-
Python生成器send、next、yield from详细解读
生成器:生成器是一类特殊的迭代器,就是需要在生成的时候才产生结果yield,而不是立即返回结果return。这样可以同时节省CPU和内存。 生成器自动实现了迭代器的两个方法:__iter__() 和 __next__() 有两种方法实现生成器: 生成器函数。使用yield返回结果。yield语句一次返回一个结果,在每个结果中间挂起函数的状态,下次调用时从他离开的地方继续执行。 生成器表达式。类似列表表达式,用()来表示。 1. 简单的生成器实例 如下代码定义了MyGenerator函数,for循环原创 2021-05-09 23:58:03 · 387 阅读 · 0 评论 -
Python-基于thread和queue的线程池
代码里的注释很详细 #!/usr/bin/env python # -*- coding:utf-8 -*- """ 一个基于thread和queue的线程池,以任务为队列元素,动态创建线程,重复利用线程, 通过close和terminate方法关闭线程池。 """ import queue import threading import contextlib import time # 创建空对象,用于停止线程 StopEvent = object() def callback(status,原创 2021-03-08 16:54:55 · 620 阅读 · 0 评论 -
Python多线程之threading、Lock、Semaphore、Condition、Event、queue、Pool
1.使用threading模块操作多线程有以下两种方法: 方法一:创建threading.Thread类的实例,调用其start()方法 示例: import time import threading def task_thread(counter): print( f'线程名称:{threading.current_thread().name} 参数:{counter} 开始时间:{time.strftime("%Y-%m-%d %H:%M:%S")}' )原创 2021-03-04 15:44:35 · 562 阅读 · 2 评论