perf: await on immediately ready timer queues its task

This commit is contained in:
Simon Cruanes 2025-05-02 10:51:46 -04:00
parent b46a048401
commit d50c227578
No known key found for this signature in database
GPG key ID: EBFFF6F283F3A2B4

View file

@ -84,7 +84,7 @@ let with_handler (type st arg) ~(ops : st ops) (self : st) :
(* when triggers is signaled, reschedule task *) (* when triggers is signaled, reschedule task *)
if not (Picos.Fiber.try_suspend fiber trigger fiber k reschedule) then if not (Picos.Fiber.try_suspend fiber trigger fiber k reschedule) then
(* trigger was already signaled, run task now *) (* trigger was already signaled, run task now *)
Picos.Fiber.resume fiber k) reschedule trigger fiber k)
| Picos.Computation.Cancel_after _r -> | Picos.Computation.Cancel_after _r ->
Some Some
(fun k -> (fun k ->