dear groupies,
does anyone know how I can get a list of all running threads in the jvm
from jruby code.
things like this return nil:
root = java.lang.thread.currentThread.getThreadGroup.getParent
puts java.lang.thread.currentThread
can that be?
thanks for info
jason.
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email
On Tue, Dec 8, 2009 at 12:01 PM, jason franklin-stokes
[email protected] wrote:
can that be?
Try this:
irb(main):001:0> require ‘java’
=> true
irb(main):002:0> group = java.lang.Thread.currentThread.thread_group
=> java.lang.ThreadGroup[name=main,maxpri=10]
irb(main):004:0> root = nil; while group.parent; root = group.parent;
group = root; end
=> nil
irb(main):005:0> root
=> java.lang.ThreadGroup[name=system,maxpri=10]
irb(main):009:0> threads = Array.new(root.activeCount).to_java
“java.lang.Thread”
=> [Ljava.lang.Thread;@176ee6
irb(main):010:0> root.enumerate(threads)
=> 4
irb(main):011:0> threads.map {|t| t.inspect }
=> [“Thread[Reference Handler,10,system]”,
“Thread[Finalizer,8,system]”, “Thread[Signal Dispatcher,9,system]”,
“Thread[main,5,main]”]
/Nick
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email