読者です 読者をやめる 読者になる 読者になる

Rubyでスレッド間の競合を回避するMutex

Ruby

RailsでTokyoTyrantを使ってみたらフリーズしたで紹介されている現象に私はまだ遭遇していないのですが、一応対策だけはしておこうと思いました。

RubyのThreadはよく知らないので、まずはMutexまわりを調べました。

以下のようにすれば、とりあえずは使えそう。

require "thread"

@locker = Mutex::new

@locker.synchronize do
  # do something...
end

夏くらいにシステムに手を入れるので、そのタイミングで書き換えたいと思います。