# File lib/sigdump.rb, line 23
  def self.dump_all_thread_backtrace(io)
    use_java_bean = defined?(Thread.current.to_java.getNativeThread.getId)
    if use_java_bean
      begin
        bean = java.lang.management.ManagementFactory.getThreadMXBean
        java_stacktrace_map = Hash[bean.getThreadInfo(bean.getAllThreadIds, true, true).map {|t| [t.getThreadId, t.toString] }]
      rescue
        # security error may happen
      end
    end
    Thread.list.each do |thread|
      dump_backtrace(thread, io)
      if java_stacktrace_map
        io.write "    In Java " + java_stacktrace_map[thread.to_java.getNativeThread.getId]
        io.flush
      end
    end
    nil
  end