Re: What changes to Web Messaging spec are proposed? [Was: Re: Using ArrayBuffer as payload for binary data to/from Web Workers]

On Thu, Jun 2, 2011 at 9:58 AM, Travis Leithead
<Travis.Leithead@microsoft.com> wrote:
>
> This plan requires all objects that want to opt-in to a new transfer-of-ownership (or really
> any special custom behavior for postMessage) to 1) participate in the special inheritance
> interface and 2) be isolated from the primary object graph being passed to the first
> parameter.

I interpreted the proposal differently... This is what I envisioned:

  var bufferToTransfer = /* make ArrayBuffer */;
  var bufferToCopy = /* make ArrayBuffer */;
  var worker = /* make Worker */;
  var message = { buf1: bufferToTransfer, buf2: bufferToCopy };
  worker.postMessage(message, [bufferToTransfer]);

We'd keep the structure exactly the same, it's just that when we clone
'message' we compare each object value to one of the ones passed in
the transfer array. If the objects match (===) then we'd transfer it
rather than copy it.

Does that sound like what you were hoping for?

-Ben Turner

Received on Thursday, 2 June 2011 17:23:30 UTC