0

我有这种奇怪的情况,我想一次将一个操作限制为一个用户而不使用任何数据库?

谢谢你的帮助。

4

2 回答 2

1

也许你可以使用类变量。类变量不仅适用于一个实例,而且在类的每个实例中都是相同的。

def do_something
  if @@locked
    render text: "Sorry, somebody else working here."
  else
    @@locked = true

    # do the stuff you need to do here

    @@locked = false
  end
end
于 2012-04-24T13:55:14.460 回答
1
require FileUtils
def lockable_action
  if File.exists? "/tmp/lock"
     # sorry, I'm locked
  else
     File.open("/tmp/lock","w") {|f| f.write("1")
     # do your thing
     FileUtils.rm "/tmp/lock"
  end
endk
于 2012-04-24T14:00:44.090 回答