zoukankan      html  css  js  c++  java
  • web-worker 的使用

      JavaScript采用的是单线程模式,它每次也只能执行一个事件,所以它在加载大量的事件的时候会比较慢。

    而web-worker的作用就是给JavaScript提供一个多线程的模式。

      注意的是

        web-worker是无法操作DOM的节点的,它不能再主线程中调用的子线程中的函数,并且只能使用原生js进行编写。

        还有web-worker我在网上看见说是在部分浏览器里面是无效的,我在电脑上Google及Safari(电脑上仅有这两个浏览器╮( ̄▽ ̄)╭)上面测试了一下是没有问题的。

    web-worker的使用

      创建主线程

        使用new来创建一个worker的函数,

    var worker = new Worker("./work.js") 
    

        然后使用worker.postMessage('...')向子线程方式数据

        接收子线程的数据

    worker.onmessage = function(){
        console.log(event.data)
    }

      子线程

        在主线程中想子线程发布的数据使用

    onmessage =function (event){
        var mar_skt = event.data;   //通过event.data获得发送来的数据
        console.log(mar_skt);       //打印数据
    }
    

        然后在使用postMessage向主线程发生在子线程内容执行完毕的内容

    postMessage(data)
    

      在不想要worker的时候也可以直接使用terminate()来结束它

    worker.terminate();
    

      

  • 相关阅读:
    【原创】贴片电容的测量方法。。。这是我从自己QQ空间转过来的,本人实操!
    CentOS6.4安装Apache+MySQL+PHP
    第一次在博客园写博客。。。新人
    C# 简单生成双色球代码
    从客户端中检测到有潜在危险的 Request.Form 值 方法
    经典实例
    js鼠标键禁用功能
    逻辑思维题
    C#运算符笔记
    C#基础
  • 原文地址:https://www.cnblogs.com/nixu/p/10595747.html
Copyright © 2011-2022 走看看