使用多线程与不使用多线程访问同一个网址实例对比
import requests#requests库需要安装 python3 -m pip install requests
import time
import threading#定义一个请求网址url,以及
def get_response(i):#i 为传入的参数:循环的第几个url = "https://blog.csdn.net/weixin_47021806/article/details/115585475/"# 或者https://www.baidu.com/hd ={"user-agent":"chrome/80.0"}#赋值变量hd 字典格式 用于标识浏览器头部r= requests.get(url,headers=hd)print(r,i)#使用多线程方式 不按顺序执行
def main02():st = time.perf_counter() # 开始循环前的时间tList=[threading.Thread(target=get_response,args=(i,),name=str(i)) for i in range(30)]#i表示循环的第几个[t.start() for t in tList][t.join() for t in tList] et =time.perf_counter() # 结束循环前的时间usetime=et-st#用时print(usetime)#不使用多线程 这个会按照顺序执行
def main01():st = time.perf_counter() for i in range(5):get_response(i)et = time.perf_counter()usetime=et-stprint(usetime)if __name__=="__main__":main02()main01()#以下4行可用列表推导式代替# tList=list()# for i in range(30):# threading.Thread(target=get_response,args=(url,),name=str(i))# tList.append(i)#列表推导式# tList=[threading.Thread(target=get_response,args=(url,i),name=str(i)) for i in range(30)]
注意:多线程不按顺序执行
使用多线程与不使用多线程访问同一个网址实例对比相关推荐
- gunicorn多进程不死_WEB,gunicorn - 无论是多进程、多线程、协程模式,同一个浏览器窗口多个标签页访问同一个url,看上去不会并发的问题...
TL;DR 其实是浏览器同一个窗口下限制了对同一个url会执行串行操作. 1.参考 2.现象 我有一个WSGI APP,每次处理request都睡眠5秒.不管多进程.多线程.协程跑WSGI APP,同 ...
- 多线程不重复读取数据_别再犯错了,多线程访问同一个资源一定要上锁?
大家都知道,多线程访问同一个资源必须要做同步互斥,一定要用到锁,这个说法是完全正确的吗? 以常见的生产者消费者模型举例,这里我们只有一个生产者,一个消费者.即,一个线程不断的从一个设备读取数据,放入缓 ...
- Oracle字符串转BooIean,利用Java的多线程技术实现数据库的访问.pdf
利用Java的多线程技术实现数据库的访问.pdf 第 卷第 期 计算机应用 22 12 Voi .22 , No . 12 年 月 2002 12 Computer Appiications Dec ...
- MYSQL多线程并发操作同一张表同一个字段的更新问题
MYSQL多线程并发操作同一张表同一个字段的更新问题? 可以用乐观锁方案: 在表里增加个字段,版本号字段 每次更新前先从数据库里获取这个版本号的值,然后更新时要同步更新版本号+1,并且增加更新条件版本 ...
- java 多线程不安全_多线程并发为什么不安全
一.线程安全定义 定义: 多个线程访问同一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他操作,调用这个对象的行为都可以获得正确的结果 ...
- Java多线程之单例模式在多线程环境下的安全问题
Java多线程之单例模式在多线程环境下的安全问题 目录: 单例模式基本概念 单线程下的单例模式 多线程下的单例模式 单例模式volatile分析 1. 单例模式基本概念 基本概念转载自:单例模式|菜鸟 ...
- java多线程编程核心技术 pdf_Java多线程编程核心技术之volatile关键字
私信我或关注公众号猿来如此呀,回复:学习,获取免费学习资源包 volatile关键字 关键字volatile的主要作用是使变量在多个线程间可见. 1 关键字volatile与死循环 如果不是在多继承的 ...
- ios多线程Android,iOS 关于多线程
一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如:同时打开QQ,Xcode,系统就会分别启动2个进程 通过 ...
- java多线程 cpu分配_java多线程总结(转载)
Java 多线程编程总结 --------------------------------------------------------------------------------------- ...
最新文章
- 谷歌AI乳腺癌检测超过人类,LeCun质疑引起讨论
- WM8962 HPOUT 信号强度 时间周期
- tableau必知必会之学做常用的倾斜图(slopegraph)
- Oracle9在Windows7下的安装
- (赞助5本)谷歌官方推荐的 TensorFlow 2 “豹书”来了!
- 360极速浏览器无法正确getHours
- jsp压缩html,使用HtmlCompressor压缩JSP编译的Html代码
- DIV+CSS定义及优势
- @media 如何使用?
- mysql+tinyint+符号_mysql中TINYINT的取值范围
- keep行走和计步_KEEP跑步计步器
- 车牌识别系列(二)生成具有真实感的(realistic)车牌数据
- 【学习笔记】行人异常行为检测的综述
- 什么是WinSxS?
- 单行函数和多表查询 例题代码可复制
- mysql 怎么存经纬度_mysql存储地图经纬度的表怎么设计?
- 强制用户使用定向推送功能是什么意思?整改措施请收好
- 孩子到底是食物过敏?还是食物不耐受?
- Unity配置文件xxx.ini
- 织梦php 文章采集规则,DEDE全自动采集插件