Fix a bug with resource pool idle checking

The fiber would never finish.
This commit is contained in:
Christopher Baines 2025-11-24 17:06:27 +00:00
parent 95200eccfd
commit d07e309566

View file

@ -1178,9 +1178,16 @@
(when idle-seconds (when idle-seconds
(spawn-fiber (spawn-fiber
(lambda () (lambda ()
(while #t (let loop ()
(sleep idle-seconds) (put-message channel '(check-for-idle-resources))
(put-message channel '(check-for-idle-resources)))))) (when (choice-operation
(wrap-operation
(sleep-operation idle-seconds)
(const #t))
(wrap-operation
(wait-operation destroy-condition)
(const #f)))
(loop))))))
(with-exception-handler (with-exception-handler
(lambda (exn) (lambda (exn)