摘要:
并发下载多文件 main 1.定义下载的文件路径 2.调用执行下载的方法 download 1.根据url地址请求网络资源 2.在本地创建文件 3.读取网络资源并写入到本地文件 4.处理异常 from gevent import monkey monkey.patch_all() import ur 阅读全文
posted @ 2021-12-15 03:10
HyeJeong
阅读(137)
评论(0)
推荐(0)
摘要:
gevent gevent gevent是python中另一个实现协程的第三方库,greenlet需要指定切换任务,而gevent能够自动调度协程 gevent能够自动识别程序中的耗时操作,遇到耗时操作时自动切换到其他的任务 由于IO操作非常耗时,程序经常处于等待状态,使用gevent实现自动切换协 阅读全文
posted @ 2021-12-15 03:08
HyeJeong
阅读(95)
评论(0)
推荐(0)
摘要:
greenlet greenlet Greenlet是python的一个C扩展,提供可自行调度的协程 当一个greenlet遇到IO操作,如访问网络、文件操作时,就自动切换到其他greenlet,等IO操作完成,再在适当的时间切换回来继续执行 greenlet实现的协程在yield value时只能 阅读全文
posted @ 2021-12-15 03:06
HyeJeong
阅读(58)
评论(0)
推荐(0)
摘要:
协程 协程 协程(Coroutine)又叫微线程,协程就是可以执行暂停的函数 线程和进程的操作是由程序触发系统接口,最后的执行者是系统,协程的操作者是程序员 协程是一个特殊的生成器 协程的作用 在不开辟新线程的基础上实现多任务 对于多线程应用,CPU通过切片来切换线程间的执行,线程切换需要耗时(保存 阅读全文
posted @ 2021-12-15 03:04
HyeJeong
阅读(90)
评论(0)
推荐(0)
摘要:
多进程实现文件夹copy 文件位置:G:/PyCharmProject/zero/13.多任务 - 进程/test copy位置:C:/Users/lenovo/Desktop/test 步骤: 1.定义变量接收源文件夹路径和目标文件夹路径 2.在目标路径创建文件夹 3.获取源文件夹中的文件列表 4 阅读全文
posted @ 2021-12-15 03:01
HyeJeong
阅读(119)
评论(0)
推荐(0)
摘要:
进程池中的Queue 实现进程池中的进程通信 import multiprocessing import time # 写入数据到queue def write_queue(queue): for i in range(10): if queue.full(): print('队列已满') brea 阅读全文
posted @ 2021-12-15 03:00
HyeJeong
阅读(65)
评论(0)
推荐(0)
摘要:
进程池 进程池 是一个进程的容器,可以自动创建指定数量的进程,并管理进程 当需要创建的子进程数量很大,可以使用multiprocessing模块中的Pool类 初始化Pool时,可以指定最大进程数,当有新的请求提交到Pool中,如果Pool未满,就会自动创建一个新的进程来执行该请求 如果Pool中的 阅读全文
posted @ 2021-12-15 02:58
HyeJeong
阅读(144)
评论(0)
推荐(0)
摘要:
Queue实现进程间通信 进程1 put(3) put(2) put(1) ↓ ↓ ↓ queue: 3 2 1 ↓ ↓ ↓ get(3) get(2) get(1) 进程2 import multiprocessing import time # 写入数据到queue def write_queu 阅读全文
posted @ 2021-12-15 02:57
HyeJeong
阅读(49)
评论(0)
推荐(0)
摘要:
消息队列 消息队列 目的是为了实现进程间通信 import multiprocessing if __name__ == '__main__': # 创建queue,长度为5 queue = multiprocessing.Queue(5) # 向queue中放入值 queue.put(10) qu 阅读全文
posted @ 2021-12-15 02:55
HyeJeong
阅读(83)
评论(0)
推荐(0)
摘要:
子进程访问变量的方式 子进程间不能共享全局变量 子进程运行时,会把主进程的一部分资源复制到子进程内部进行操作 子进程内访问全局变量时,操作的是复制的数据,所以子进程之间是互相隔离的 import multiprocessing import time num = 10 def work1(): gl 阅读全文
posted @ 2021-12-15 02:53
HyeJeong
阅读(99)
评论(0)
推荐(0)

浙公网安备 33010602011771号