Project

General

Profile

Feature #8215

Support accessing Fiber-locals and backtraces for a Fiber

Added by halorgium (Tim Carey-Smith) over 7 years ago. Updated 2 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
[ruby-core:53974]

Description

=begin
As part of debugging celluloid, I have been wanting to diagnose where the Fibers are running and their various locals.

I would expect the following to work.

Thread.current[:key] = "outside"
fiber = Fiber.new do
Thread.current[:key] = "inside"
Fiber.yield
end
fiber.resume
fiber[:key] == "inside" # true
fiber.backtrace # ...

I also wonder whether (({Fiber#[]})) should be implemented, so (({Fiber.current[:key]})) is possible.

For reference, here is the issue on the rubinius issue tracker: ((<"github/rubinius/rubinius/2200"|URL:https://github.com/rubinius/rubinius/issues/2200>))
=end


Files

0001-cont.c-fiber-local-accessors.patch (2.94 KB) 0001-cont.c-fiber-local-accessors.patch nobu (Nobuyoshi Nakada), 04/16/2013 05:03 PM

Also available in: Atom PDF