From: Steven Lumos Date: 2006-10-26T09:22:15+09:00 Subject: Re: Kernel#caller for non-current thread Joel VanderWerf writes: > Steven Lumos wrote: >> Looks like it can be done in C by: set ruby_frame to the particular >> th->frame, call backtrace(), and set it back. Is there a better way or >> has anybody already done it? > > Hm, is there anything in the implementation of #backtrace that could > cause another thread to run? Maybe Thread.critical=true is needed... > > This would be nice to have, if it works. Unfortunately my initial scan of the source turned out to be too quick. structs that I assumed would be defined in one of the header files (struct thread) are actually defined in eval.c. I believe a lot was opened up in 1.8.5 for Sandbox, but I haven't checked it yet. Steve