当前位置: 首页 > news >正文

做网站收费 优帮云在wordpress上添加播放器

做网站收费 优帮云,在wordpress上添加播放器,个人网站怎么建立,图库asyncPool应用场景 一个不太常见的极端场景,当我们为了某个操作需要发生异步请求的时候,等待所有异步请求都完成时进行某些操作。这个时候我们不在简简单单的发送 1 - 2 个请求而是 5 - 10个(其实极端场景式 很多很多个请求,这个…

asyncPool应用场景

一个不太常见的极端场景,当我们为了某个操作需要发生异步请求的时候,等待所有异步请求都完成时进行某些操作。这个时候我们不在简简单单的发送 1 - 2 个请求而是 5 - 10个(其实极端场景式 很多很多个请求,这个打个比喻更容易理解)。
通常情况下我们通过 promise.all 可以保证多个请求完成后进行操作,等待所有的promise对象都达到了resovle再执行then方法进行操作。这样是可以完成的,但是当我们发送1000个请求,等待1000个请求完成后在进行操作,首先不说等待完成操作,就简简单单的http请求瞬间发生1000个,你猜浏览器会怎么样?只能说友谊的小船说翻就翻,因为瞬间发出大量的http请求,导致浏览器堆积了很多栈,导致内存溢出。

并发控制孕育而生,如何实现思路?

身为开发者我们无法控制http请求的多少,但是我们能控制异步任务的数量,具体来说就是我们可以控制promise的实例化数量,用以避免高并发带来的问题。当我们想要的(数量自己输入)promise的数量全部resolve的时候,再将其他的promise放入队列。

直接放代码进行解释:
	async function asyncPool(poolLimit = 1,array = [] , interatorFn ){const result = [];const executing = [];for(let item in array){// 生成一个 promise 实例,并在 then 方法中的 onFullfilled 函数里返回实际要执行的 promise,const promise = interatorFn(item);result.push(promise);const e = promise.then(()=>{// 将执行完毕的 promise 移除executing.splice(executing.indexOf(e),1)})executing.push(e)if(poolLimit >= array.length){await Promise.race(executing);}}}return Promise.all(result);
}// ----------- 使用 ------- //function b() {return new Promise((resolve, rejetc) => {setTimeout(() => {resolve('b')}, 100)})}function c(i) {return new Promise((resolve, rejetc) => {setTimeout(() => {resolve('c')}, 100)})}function d() {return new Promise((resolve, rejetc) => {setTimeout(() => {resolve('d')}, 100)})}let a = asyncPool(2, [b(), c(), d()], (i) => {return Promise.resolve(i);});a.then(res => {console.log(res)})
http://www.yayakq.cn/news/216220/

相关文章:

  • 网站安全建设模板上海设计公司网站
  • 网站开发有哪些职位九江建设公司网站
  • 自己做服务器网站购买网站外链
  • 建设童装网站的意义网站域名后缀
  • 什么网站可以做相册天峻县公司网站建设
  • 遂宁市建设银行网站北京美的网站
  • 国外网站页头设计图片剖析材料范文哪个网站做的好
  • 沙漠风网站建设怎么样外企公司网站开发设计
  • 火花机 东莞网站建设个人网站备注模板
  • 手机怎么建自己的网站怎么看网站是什么语言做的后台
  • 河南省建设厅网站总经济师广州番禺景点
  • 网站安全检测软件网站建设相关关键词
  • 资源网站优化排名软件网站开发设计流程论文
  • 扬中网站制作龙中龙网站开发
  • 网站域名备案多长时间短视频seo代理
  • 企业营销网站华为公司的企业设计
  • 做网站的公司不给域名上海网站推广企业
  • 德阳网站设计seo快排公司哪家好
  • 手机版网站开发用什么语言珠海做网站的公司
  • 华为的网站建设七牛视频wordpress
  • 教育类网站开发需求说明书甘肃省城乡建设局网站首页
  • 网站如何做su商务网站开发步骤
  • 做网站软件A开头的企业网站网站建设电话
  • 企业网站建设的总体架构拖拽自助建站系统源码
  • 梧州网站制作定制网站开发哪家强
  • 祁县网站建设做网站子页
  • 开发大型网站长沙微网站建设公司
  • 网站优化计划中国砖瓦招聘求职平台
  • 上海网站建设收费中文字体怎么设计网站
  • 中天建设集团门户网站播放我的观看历史记录