Skip to content

Kill the runPureEff worker when its result is unreachable - #383

Merged
arybczak merged 1 commit into
masterfrom
runpureeff-reaper
Sep 11, 2026
Merged

arybczak merged 1 commit into
masterfrom
runpureeff-reaper

Conversation

@arybczak

Copy link
Copy Markdown
Member

The worker thread of runPureEff runs to completion even when every thread that waited for the result was interrupted, e.g. by a timeout. Attach a finalizer to a key that only the waiting thread and the suspended computation reference. The finalizer kills the worker at the first major GC after the result became unreachable.

The worker thread of runPureEff runs to completion even when every
thread that waited for the result was interrupted, e.g. by a timeout.
Attach a finalizer to a key that only the waiting thread and the
suspended computation reference. The finalizer kills the worker at the
first major GC after the result became unreachable.
@arybczak
arybczak merged commit a8aa96a into master Sep 11, 2026
5 checks passed
@arybczak
arybczak deleted the runpureeff-reaper branch September 11, 2026 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant