Thanks! This worked for me for a toy example (for multiple calls, I’d record whether an exception was thrown during the first try):
``` try { // Try new API (clone) worker.postMessage({sharedBuffer}); } catch (e) { // Fall back to old API (transfer) worker.postMessage({sharedBuffer}, [sharedBuffer]); } ``` Complete source code: https://github.com/rauschma/shared-array-buffer-demo/blob/master/main.js Axel > On 25 Jan 2017, at 15:03, Lars Hansen <lhan...@mozilla.com> wrote: > > You're asking about how postMessage() handles a SharedArrayBuffer, since the > spec changed last summer from requiring the buffer to be in the transfer list > to forbidding it. For the time being, Firefox allows the SAB to be in the > transfer list but prints a warning in the console; by and by we will throw an > error for that (and until then we'll fail any test cases that test for an > exception). This is implemented in Firefox 51, if my testing right now is > correct. > > Since no browser has officially shipped this functionality I think some > browser sniffing may be reasonable for early adopters who want to operate in > a multi-browser setting. I would expect that when this functionality is > enabled by default in a browser the browser would adhere to the spec. > > --lars > > > On Wed, Jan 25, 2017 at 10:49 AM, Axel Rauschmayer <rausc...@icloud.com > <mailto:rausc...@icloud.com>> wrote: > AFAICT, all current implementations want you to transfer SABs. What’s the > best way to prepare for the future? `try` transferring and clone in the > `catch` clause? > > Thanks! > > Axel > > -- > Dr. Axel Rauschmayer > rauschma.de <http://rauschma.de/> > [Sent from a mobile device, please forgive brevity and typos] > _______________________________________________ > es-discuss mailing list > es-discuss@mozilla.org <mailto:es-discuss@mozilla.org> > https://mail.mozilla.org/listinfo/es-discuss > <https://mail.mozilla.org/listinfo/es-discuss> > -- Dr. Axel Rauschmayer a...@rauschma.de dr-axel.de
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss