You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's no infrastructure in the implementation of at_coroutine_exit to prevent the above from breaking the affinity invariant and no tests confirming that it doesn't break the invariant so it's almost certainly broken.
Note: the magic behaviour of co_await schedule(s); in a coroutine maintains the affinity invariant by using at_coroutine_exit to reschedule onto the correctScheduler so fixing this will require some careful thought.
The text was updated successfully, but these errors were encountered:
I can't know without writing a unit test, but I'm pretty certain this breaks Scheduler affinity:
There's no infrastructure in the implementation of
at_coroutine_exit
to prevent the above from breaking the affinity invariant and no tests confirming that it doesn't break the invariant so it's almost certainly broken.Note: the magic behaviour of
co_await schedule(s);
in a coroutine maintains the affinity invariant by usingat_coroutine_exit
to reschedule onto the correct Scheduler so fixing this will require some careful thought.The text was updated successfully, but these errors were encountered: