随笔分类 -  并发编程

摘要:代码 import flask from concurrent.futures import ProcessPoolExecutor import math import json app = flask.Flask(__name__) def is_prime(n): if n < 2: retu 阅读全文 »
posted @ 2022-07-05 22:28 cnhkzyy 阅读(468) 评论(0) 推荐(0) 编辑
摘要:有了多线程threading,为什么还要用多进程multiprocessing 多进程multiprocessing知识梳理(对比多线程threading) 代码实战:单线程、多线程、多进程对比CPU密集计算速度 tmp/06.thread_process_cpu_bound.py import m 阅读全文 »
posted @ 2022-07-05 00:08 cnhkzyy 阅读(112) 评论(0) 推荐(0) 编辑
摘要:web服务的架构以及特点 使用线程池ThreadPoolExecutor加速 加速前 tmp/05.falsk_thread_pool.py 这三种模拟的场景(读文件、读数据库、访问API)都是IO,使用sleep就相当于做了一次IO import flask import json import 阅读全文 »
posted @ 2022-07-04 23:06 cnhkzyy 阅读(103) 评论(0) 推荐(0) 编辑
摘要:线程池的原理 使用线程池的好处 ThreadPoolExecutor的使用语法 使用future import concurrent.futures import blog_spider # craw with concurrent.futures.ThreadPoolExecutor() as p 阅读全文 »
posted @ 2022-07-04 22:05 cnhkzyy 阅读(674) 评论(0) 推荐(0) 编辑
摘要:线程安全概念介绍 Lock用于解决线程安全问题 未加锁导致重复扣款 现在有一个取钱的功能,如果账户余额大于取钱数量的时候,就会进行取钱操作,启动2个线程,并发的去取钱,可能会出现余额不足,但也能进行取钱的操作,如果加了等待时间,这个现象是必现的,因为sleep会造成线程的阻塞,导致线程的切换 tmp 阅读全文 »
posted @ 2022-07-02 21:00 cnhkzyy 阅读(120) 评论(0) 推荐(0) 编辑
摘要:多组建的pipline技术架构 生产者消费者爬虫的架构 多进程数据通信的queue.Queue 线程安全:指的是多个线程不会冲突 get和put方法是阻塞的:当里面没有数据的时候,q.get()会卡住,直到里面有了数据把它取出来,q.put()当队列满了以后会卡住,直到有一个空闲的位置才能put进去 阅读全文 »
posted @ 2022-07-02 20:14 cnhkzyy 阅读(118) 评论(0) 推荐(0) 编辑
摘要:python创建多线程的方法 单线程、多线程爬取博客园速度对比 tmp/blog_spider.py import requests urls = [ f"https://www.cnblogs.com/#p{page}" for page in range(1, 50+1) ] def craw( 阅读全文 »
posted @ 2022-07-02 17:25 cnhkzyy 阅读(236) 评论(0) 推荐(0) 编辑
摘要:python速度慢的两大原因 GIL是什么 为什么有GIL这个东西 怎么规避GIL带来的限制 阅读全文 »
posted @ 2022-07-02 11:46 cnhkzyy 阅读(36) 评论(0) 推荐(0) 编辑
摘要:python并发编程的三种方式 多线程Thread、多进程Process、多协程Coroutine 什么是CPU密集型计算、IO密集型计算 CPU密集型(CPU-bound):CPU密集型也叫计算密集型,是指I/O在短时间内就可以完成,CPU需要大量的计算和处理,特点是CPU占用率相当高。例如:压缩 阅读全文 »
posted @ 2022-07-02 11:07 cnhkzyy 阅读(91) 评论(0) 推荐(0) 编辑
摘要:学习教程地址 这篇教程是:b站up主蚂蚁学Python的视频教程的笔记,原视频地址:【2021最新版】Python 并发编程实战,用多线程、多进程、多协程加速程序运行 为什么要引入并发编程 场景1:一个网络爬虫,按顺序爬取花了1个小时,采用并发下载减少到20分钟! 场景2:一个APP应用,优化前每次 阅读全文 »
posted @ 2022-07-02 10:47 cnhkzyy 阅读(117) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示