标签:创建 工作 rip 加载文件 data get message 请求 线程之间的通信
1.web worker
在浏览器中JavaScript主线程与UI渲染线程是互斥的。即UI渲染线程会阻塞JavaScript线程的运行。
web worker允许创建工作线程,并可以与JavaScript主线程同时运行,可以让一些占用大量计算资源的计算在worker线程上运行。
1 //主线程与worker线程之间的通信 2 //worker 可以利用XMLHttpRequest加载文件, 3 4 var worker = new worker(‘js/worker.js‘); 5 worker.postMessage(args); 6 worker.onmessage = function(event){ 7 document.getElementById(‘result‘).textContent = event.data;}; 8 9 //workerjs 10 onmessage = function(e){ 11 var calcuResult = e.data; 12 for(var i=0;i<1000;i++) 13 calcuResult+=i; 14 } 15 postMessage(calcuResult);
2.webSockets
客户端与服务器端只建立一个TCP连接;webSocket服务器可以推送数据到客户端,这远比HTTP请求响应模式更加灵活更加高效;有更轻量级的协议头,能够减少数据的传送。HTTP 发送请求握手,握手完成后,不再进行 HTTP交互,而是开始 webSocket的数据帧协议。
标签:创建 工作 rip 加载文件 data get message 请求 线程之间的通信
原文地址:https://www.cnblogs.com/wust-hy/p/7484974.html