• dedicated StartImmediate proxy that runs the async synchronously until the first bind
  • eliminate unneeded cancellation checks. JS is single-threaded, WebSharper asyncs are checking cancellation more often than needed, it would be enough to check on Bind/Combine/Start
  • remove custom event loop and just always use JS event loop. Upside is that async stack traces become possible to debug. We have to test for performance but JS event loop should be quick too. Another possibility is to use Promises but that needs polyfill for keeping ECMAScript 5/IE compatibility.
  • github

    This topic has been closed.

  • JankoA

    tested removing custom event loops, makes heavy async usage way too slow.

    StartWithContinuations needs similar fix and test as StartImmediate