Q4M for Ruby マルチスレッド

RubyのスレッドがMySQLで詰まるのはそういうものらしくて、最近話題らしいNeverBlockの関連プロダクトmysqlplusがあると解決するらしい。

require 'mysqlplus'
ActiveRecord::Base.connection.raw_connection.async_query("select queue_wait('#{table_name}')")

こうするとちゃんとスレッドが切り替わってる気がする。あとCtrl+Cでちゃんと終了してくれるようになった。