Switching to async/await from Task.jsm/yield
mhammond at mozilla.com
Thu Mar 16 23:11:36 UTC 2017
On 17/3/17 9:39 am, Mike Conley wrote:
> I'm all for it.
> For the people who are more familiar with async / await than I am, and
> have also used Task.jsm, are there any gotchas, or is it pretty much a
> drop-in replacement?
I'm all for it, and since 54 we've been landing async functions in the
Sync code base and it works well. The code isn't particularly
performance sensitive and we've not profiled anything, but there's no
obvious evidence of worse performance.
However, there is some weirdness with stacks - see bug 1343158 -
Task.jsm often has the same issue, but it can be subtly different -
because Task.jsm still uses Promise.jsm which has some additional stack
magic. Code using DOM promises also has subtly different behavior re stacks.
So eventually this will be a big win (only DOM promises and async
functions should exist, so less places for strange behaviour to appear),
but it is worth being aware of issues with stack traces in the
(hopefully) shorter term.
More information about the firefox-dev