当前位置:首页 > 科技  > 软件

开 1000 个 Web Worker!我的页面能起飞吗?

来源: 责编: 时间:2024-05-29 17:32:06 282观看
导读背景最近看到一个很有趣的问题:页面中 Web Worker 数量是不是越多越好?如果设置 1000个,那岂不是无敌了?为此我们先准备一段代码,这段代码是计算一下从0累计到1亿,需要花费多少时间。图片图片可以发现需要耗费很久的时间,总

背景

最近看到一个很有趣的问题:页面中 Web Worker 数量是不是越多越好?如果设置 1000个,那岂不是无敌了?8GW28资讯网——每日最新资讯28at.com

为此我们先准备一段代码,这段代码是计算一下从0累计到1亿,需要花费多少时间。8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

可以发现需要耗费很久的时间,总共 43s,并且在这段时间内,主线程会被堵塞,后续的代码都执行不了,所以一般这种耗时的操作可以放在 WebWorker 中去分担主线程的工作。8GW28资讯网——每日最新资讯28at.com

使用 WebWorker

刚刚我们直接在主线程中去做累加的操作,是非常费时的,我们试试在 WebWorker 中去做,我们先准备一个 worker.js。8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

并且在 index.js 中去引入并创建 WebWorker 实例,我们先来试试一个实例,耗时多少?8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

可以发现时间大大缩短!!!只需要 4.9s!!!8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

那既然这样的话!!!是不是我们使用更多的 WebWorker 实例去分担工作,耗时就越短呢?8GW28资讯网——每日最新资讯28at.com

于是我开始增加 WebWorker 实例的数量。8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

从 1 开始加,发现总耗时确实越来越低了,但是当实例数量超过 16 个后,发现总耗时就没有下降过了!!!8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

原因其实很简单,因为线程的并行需要依赖于CPU的核数。我查看了一下我电脑的核心数,我的电脑是 16 核的。8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

也可以使用 navigator.hardwareConcurrency 这个 API 来看本电脑的核心数。8GW28资讯网——每日最新资讯28at.com

图片图片8GW28资讯网——每日最新资讯28at.com

总结

所以总结就是:WebWorker 是越多越好,但是也有上限,上限取决于你 CPU 的 核心数。8GW28资讯网——每日最新资讯28at.com

所以你如果想尽量多地使用 WebWorker 来分担工作,可以将数量设置为你的电脑的 CPU 核心数。8GW28资讯网——每日最新资讯28at.com

图片 图片 8GW28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-91532-0.html开 1000 个 Web Worker!我的页面能起飞吗?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 一个 Python 对象会在何时被销毁?

下一篇: Spring 中如何控制 Bean 的加载顺序?

标签:
  • 热门焦点
  • 直屏旗舰来了 iQOO 12和K70 Pro同台竞技

    旗舰机基本上使用的都是双曲面屏幕,这就让很多喜欢直屏的爱好者在苦等一款直屏旗舰,这次,你们等到了。据博主数码闲聊站带来的最新爆料称,Redmi下代旗舰K70 Pro和iQOO 12两款手
  • 小米平板5 Pro 12.4简评:多专多能 兼顾影音娱乐的大屏利器

    疫情带来了网课,网课盘活了安卓平板,安卓平板市场虽然中途停滞了几年,但好的一点就是停滞的这几年行业又有了新的发展方向,例如超窄边框、高刷新率、多摄镜头组合等,这就让安卓
  • 28个SpringBoot项目中常用注解,日常开发、求职面试不再懵圈

    前言在使用SpringBoot开发中或者在求职面试中都会使用到很多注解或者问到注解相关的知识。本文主要对一些常用的注解进行了总结,同时也会举出具体例子,供大家学习和参考。注解
  • 得物效率前端微应用推进过程与思考

    一、背景效率工程随着业务的发展,组织规模的扩大,越来越多的企业开始意识到协作效率对于企业团队的重要性,甚至是决定其在某个行业竞争中突围的关键,是企业长久生存的根本。得物
  • JavaScript学习 -AES加密算法

    引言在当今数字化时代,前端应用程序扮演着重要角色,用户的敏感数据经常在前端进行加密和解密操作。然而,这样的操作在网络传输和存储中可能会受到恶意攻击的威胁。为了确保数据
  • 最“俊美”淘宝卖家,靠直播和短视频圈粉,上架秒光,年销3000万

    来源 | 电商在线文|易琬玉编辑|斯问受访店铺:Ringdoll戒之人形图源:微博@御座的黄山、“Ringdoll戒之人形”淘宝店铺有关外貌的评价,黄山已经听累了。生于1985年的他,哪
  • 华为Mate 60保护壳曝光:硕大后置相机模组 凸起程度有惊喜

    这段时间以来,关于华为新旗舰的爆料日渐密集。据此前多方爆料,今年华为将开始恢复一年双旗舰战略,除上半年推出的P60系列外,往年下半年的Mate系列也将
  • 2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • 三星显示已开始为AR设备研发硅基LED微显示屏

    7月18日消息,据外媒报道,随着苹果首款头显产品Vision Pro在6月份正式推出,AR/VR/MR等头显产品也就将成为各大公司下一个重要的竞争领域,对显示屏这一关
Top