sharedWorker_ports.js (820B)
1 var port; 2 onconnect = function (evt) { 3 evt.source.postMessage({ type: "connected" }); 4 5 if (!port) { 6 port = evt.source; 7 evt.source.onmessage = function (evtFromPort) { 8 port.postMessage({ 9 type: "status", 10 test: "Port from the main-thread!" == evtFromPort.data, 11 msg: "The message is coming from the main-thread", 12 }); 13 port.postMessage({ 14 type: "status", 15 test: evtFromPort.ports.length == 1, 16 msg: "1 port transferred", 17 }); 18 19 evtFromPort.ports[0].onmessage = function (evtFromPort2) { 20 port.postMessage({ 21 type: "status", 22 test: evtFromPort2.data.type == "connected", 23 msg: "The original message received", 24 }); 25 port.postMessage({ type: "finish" }); 26 close(); 27 }; 28 }; 29 } 30 };