diff --git a/syndicate/actor.rkt b/syndicate/actor.rkt index 0537430..6e43675 100644 --- a/syndicate/actor.rkt +++ b/syndicate/actor.rkt @@ -19,6 +19,7 @@ actor-daemon? actor-exit-reason actor-add-exit-hook! + actor-remove-exit-hook! actor-daemon! facet? @@ -155,6 +156,10 @@ (define (actor-add-exit-hook! ac hook) (set-actor-exit-hooks! ac (cons hook (actor-exit-hooks ac)))) +(define (actor-remove-exit-hook! ac hook) + (set-actor-exit-hooks! ac (filter (lambda (h) (not (eq? h hook))) + (actor-exit-hooks ac)))) + (define (actor-daemon! ac daemon?) (when (not (eq? daemon? (actor-daemon? ac))) (set-actor-daemon?! ac daemon?)