Make turns atomic, rather than reply-turn-per-event

This commit is contained in:
Tony Garnock-Jones 2021-05-31 12:06:44 +02:00
parent caec6fc820
commit bcbc660ff1
1 changed files with 3 additions and 1 deletions

View File

@ -228,7 +228,9 @@
(action turn) (action turn)
(for [((ff qq) (in-hash (turn-queues turn)))] (for [((ff qq) (in-hash (turn-queues turn)))]
(queue-task! (actor-engine (facet-actor ff)) (queue-task! (actor-engine (facet-actor ff))
(lambda () (for [(a (in-list (reverse qq)))] (turn! ff a))))) (lambda ()
(turn! ff (lambda (turn)
(for [(a (in-list (reverse qq)))] (a turn)))))))
(set-turn-queues! turn #f))))) (set-turn-queues! turn #f)))))
(define (turn-call-with-facet outer-turn f action) (define (turn-call-with-facet outer-turn f action)