Trong tất cả các ví dụ tôi đã nhìn thấy, họ là tương tự như sauTại sao sự kiện SharedWorker onConnect có một mảng Ports?
onconnect = function(e) {
var port = e.ports[0];
port.onmessage = function(e) {
var workerResult = 'Result: ' + (e.data[0] * e.data[1]);
port.postMessage(workerResult);
}
port.start();
}
Có một ví dụ nơi mảng cổng bao giờ sẽ có nhiều hơn một yếu tố? Sử dụng chrome: // kiểm tra trên SharedWorker và in ra e
, tôi nhận được
bất kể có bao nhiêu trường hợp được sinh ra chia sẻ SharedWorker, nơi chiều dài luôn là 1. Tại sao không phải là nó chỉ là một MessageEvent thay vì một mảng? Trường hợp sử dụng nào có cho nó là một mảng?
và trường hợp nào sẽ là? sử dụng websockets? Tôi siêu tò mò. –
Sử dụng 'window.postMessage' bạn có thể truyền vào một mảng các cổng trong đối số' transfer'. Xem https://html.spec.whatwg.org/multipage/comms.html#introduction-12 https://html.spec.whatwg.org/multipage/comms.html#ports-as-the-basis- của một đối tượng-khả năng-mô-hình-trên-web – zcorpan