diff --git a/lib/trinity/scheduler.ex b/lib/trinity/scheduler.ex index 26cc190..c94cb81 100644 --- a/lib/trinity/scheduler.ex +++ b/lib/trinity/scheduler.ex @@ -167,6 +167,7 @@ defmodule Trinity.Scheduler do # needed to avoid a race where the message is already in the queue so we never unsuspend # # TODO: we could perform a yield(0) here to ensure all calls to `receive_yield()` actually yield + Trinity.Scheduler.yield(10) case Trinity.Scheduler.receive_loop(receive_fun, ref, unquote(timeout), start) do # We re-use the same ref to detect a timeout ^ref -> unquote(timeout_value)