Skip to content

[js] 第62天 有用过HTML5的WebWork吗?它主要解决了什么问题? #277

Open
@haizhilin2013

Description

@haizhilin2013
Collaborator

第62天 有用过HTML5的WebWork吗?它主要解决了什么问题?

Activity

wenyejie

wenyejie commented on Jun 17, 2019

@wenyejie

用过, 做过一次IM系统
互相通讯, (解决长轮询/长连接等问题)

forever-z-133

forever-z-133 commented on Jun 18, 2019

@forever-z-133

用过一次 canvas 的 imageData 处理。
该期间也没啥别的交互,当时也没深究,还不清楚优劣。

Vi-jay

Vi-jay commented on Jul 31, 2019

@Vi-jay

主要解决了单线程的问题 由于js执行环境是单线程 所以当处理cpu密集型问题时就没办法了 这时候就可以使用webwork开启一个子线程进行处理

smile-2008

smile-2008 commented on Dec 30, 2020

@smile-2008

用过一次 canvas 的 imageData 处理。
该期间也没啥别的交互,当时也没深究,还不清楚优劣。

xiaoqiangz

xiaoqiangz commented on Jun 16, 2022

@xiaoqiangz

Web Worker 的作用,就是为 JavaScript 创造多线程环境,允许主线程创建 Worker 线程,将一些任务分配给后者运行。在主线程运行的同时,Worker 线程在后台运行,两者互不干扰。等到 Worker 线程完成计算任务,再把结果返回给主线程。这样的好处是,一些计算密集型或高延迟的任务,被 Worker 线程负担了,主线程(通常负责 UI 交互)就会很流畅,不会被阻塞或拖慢。

Worker 线程一旦新建成功,就会始终运行,不会被主线程上的活动(比如用户点击按钮、提交表单)打断。这样有利于随时响应主线程的通信。但是,这也造成了 Worker 比较耗费资源,不应该过度使用,而且一旦使用完毕,就应该关闭。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    jsJavaScript

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @smile-2008@wenyejie@haizhilin2013@xiaoqiangz@forever-z-133

        Issue actions

          [js] 第62天 有用过HTML5的WebWork吗?它主要解决了什么问题? · Issue #277 · haizlin/fe-interview