Korzystanie z obiektów przenośnych od pracownika WWW
Obecnie mam ten kod, aby utworzyć pracownika sieci Web:
w = new Worker("webwork.js");
w.onmessage = function(event) { alert(event.data); }
A potemwebwork.js
kod dla pracownika WWW:
self.onmessage = function(event) {
//var ss=r; //Causes error because of undefined
var ss="";
for(var currProp in event) {
ss+=("event."+currProp+"="+event[currProp]+"\n");
}
postMessage(ss);
}
Teraz chcę przenieść 128-megabajtArrayBuffer
z tym kodem:
var r = new ArrayBuffer(1048576*128);
w.postMessage(0, [r]);
Teraz, gdy rzekomo przeniosłem zmiennąr
, w jaki sposób mogę uzyskać do niego dostęp z samego Web Workera. próbowałemevent.r
, właśnier
, self.r
i inne rzeczy, takie jak próba dodania drugiego argumentu funkcji dla tablicyArrayBuffers
, ale nic nie działa.
Jak mogę uzyskać dostęp do przesłanych zmiennych z programu Web Worker?