- From: Charles Pritchard <chuck@jumis.com>
- Date: Tue, 13 Dec 2011 12:30:12 -0800
- To: Dmitry Lomov <dslomov@chromium.org>
- CC: Rick Waldron <waldron.rick@gmail.com>, Webapps WG <public-webapps@w3.org>
On 12/13/11 11:11 AM, Dmitry Lomov wrote: > worker.postMessage({p:port, ab:arrayBuffer}, [post, arrayBuffer]) > work. Therefore this extension to postMessage semantics is both > backwards-compatible and consistent. On the receiving side, the > 'ports' property of event object will still contain only the message > ports from the transfer list, so that behavior is preserved as well. What's the behavior if an array buffer or port is not on the transferrables list? For example: worker.postMessage({p:port, ab:arrayBuffer}) The clone example you posted makes sense: worker.postMessage({p:port, ab:arrayBuffer}, [post, arrayBuffer]) If transferrables is supported, it'll ensure the vars are neutered and referenced appropriately, and if they aren't supported, it'll still pass a copy of array buffer through the message data. -Charles
Received on Tuesday, 13 December 2011 20:37:25 UTC