Open jimmywarting opened 5 years ago
hey so I replied in the other issue but the gist is that there are some reasons for not putting that fancy fast things in this default library but i have a different library that it might make sense to use.
What about try to use queueMicrotask and use the old one behavior as a fallback?
Or if we use https://github.com/calvinmetcalf/immediate we can add support for window.queueMicrotask there :)
the latter is probably a better option, this library get's included in a lot of bundles so the aim is to keep is small
It's true is everywhere :smile: and I understand your point but if you don't mind I'm going to do a PR with the changes that I was thinking and you can tell me if it's too much.
We've just run into this. It's particularly bad if your test suite relies on nextTick()
a lot in a browser environment.
I've tried monkey-patching with the proposed MessageChannel
fix I've seen about, and it seems to work well with good compatibility (even back to IE10!). Is there any appetite to move in that direction? I'm happy to put together a pull request, if so?
setTimeout
is clamped down to 4ms and even more when tab is hidden. I saw some old PR attempt at using Observer PostMessage immidate and other but you still usesetTimeout
and that came back and bite us when transferring data https://github.com/webtorrent/webtorrent/issues/1568Could you look into using something faster then setTimeout?