New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Threads which have blocked Fibers are not killable #841

Closed
halorgium opened this Issue Jul 1, 2013 · 4 comments

Comments

Projects
None yet
3 participants
@halorgium

halorgium commented Jul 1, 2013

It seems that a Thread which is running a Fiber and that Fiber is blocked on a Queue#pop is unkillable via Thread#kill.

repro

@headius mentioned that it should be possible to kill the Thread's current Fiber.
@dbussink wrote a rubyspec for this recently. rubinius/rubinius@9efac8a

/cc @tarcieri rubinius/rubinius#2392

@halorgium

This comment has been minimized.

halorgium commented Jul 1, 2013

This is somewhat related to the "Thread.current does not remain consistent between Fibers" bug.

I have been toying with killing all the Threads which are backing the Fibers.

@halorgium

This comment has been minimized.

halorgium commented Jul 2, 2013

Killing the Thread.current which is for the Fiber before killing the root Fiber's Thread allows the Thread to die.

@MSNexploder

This comment has been minimized.

Contributor

MSNexploder commented Jul 14, 2016

Repro works just as expected on JRuby 9.1.2.0

@enebo enebo added this to the JRuby 9.2.0.0 milestone May 17, 2017

@enebo

This comment has been minimized.

Member

enebo commented May 17, 2017

Confirmed this is working in 9.x and 1.7.x is EOL. Resolving against a release so it shows up.

@enebo enebo closed this May 17, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment