美文网首页
2018-07-29

2018-07-29

作者: 苦苦修行 | 来源:发表于2018-08-04 13:35 被阅读0次

为什么js不能操作本地文件

Html5——File、FileReader、Blob、Fromdata对象

Angular 4.x 修仙之路

Web Worker 详细介绍

HTML5新特性 多线程(Worker SharedWorker)

我们在main1.html的文本框输入数据,点击set,然后在main2.html中点击get法现能够获取到我们在main1.html中设置的数据,这说明我们的sharedWorker事实上是单例的,就像java中的static类一样,不管new多少个,实际上只有一个,这样我们的不同线程就可以共享到sharedWorker中的数据了

//shared.js
var data;
onconnect = function(e) {
  var port = e.ports[0];
  port.onmessage = function(e) {
    if(e.data=='get'){
        port.postMessage(data);
    }else{
        data=e.data;
    }
  }
}
//main1 和main2都是这样

<!DOCTYPE HTML>
<html>
<head>
    <title>Shared workers: demo 2</title>
</head>
<body>
<div id="log"></div>
<input type="text" name="" id="txt">
<button id="get">get</button>
<button id="set">set</button>
<script>
  var worker = new SharedWorker('shared.js');
  var get = document.getElementById('get');
  var set = document.getElementById('set');
  var txt = document.getElementById('txt');
  var log = document.getElementById('log');
  worker.port.addEventListener('message', function(e) {
    log.innerText = e.data;
  }, false);
  worker.port.start(); // note: need this when using addEventListener
  set.addEventListener('click',function(e){
      worker.port.postMessage(txt.value);
  },false);
  get.addEventListener('click',function(e){
      worker.port.postMessage('get');
  },false);
</script>
</body>
</html>

相关文章

  • Linux File System Explanation

    Linux File System Explanation UpDate 2018-07-29 153286211...

  • rabbitmq报Heartbeat missing with

    2018-07-29 10:20:15.018 ERROR [rabbitmq-nio] c.r.c.impl.F...

  • 2018-08-15

    不断复习你的梦想 Jamie焦关注2018-07-29 00:51 · 字数 58 · 阅读 76 · Jami...

  • 原谅0729

    2018-07-29 《原 谅 》 -----献给天下的父母 董进宇 . 孩子 . 原谅我把你带到了这个...

  • 关于87-88节《时间管理100讲》听后笔记

    2018-07-29 一、既能录音又能手写的软件----Notability(手写) 建议在iPad上使用这款工具...

  • 2018-07-29

    10组~96~郭洁~读《如何阅读》体会 郭洁_2160 2018-07-29 07:58 · 字数 598 · 阅...

  • 云淡风轻

    云淡风轻。 故事or 2018-07-29 22:41 · 字数 290 · 阅读 0 · 日记本 一睁眼,看...

  • Maven + SpringBoot + Mybatis + M

    2018-07-29 注:首先,需要你已经安装了Mysql,并且创建User表 安装 MySQL 1. Windo...

  • 思源园记

    陈老牛A 2018-07-29 10:32·字数 1086·阅读 3·日记本 陈振民 图片发自简书App ...

  • 人间是道场,淤泥皆莲花

    人间是道场,淤泥皆莲花 人间是道场,淤泥皆莲花 小石侠 2018-07-29 20:10 · 字数 1094 · ...

网友评论

      本文标题:2018-07-29

      本文链接:https://www.haomeiwen.com/subject/qfdtvftx.html