请求存储
是否曾经需要在Rails中使用全局变量? gh,那是最糟糕的。 如果需要全局状态,则可能已经达到Thread.current 。 像这样:
def self . foo
Thread . current [ :foo ] ||= 0
end
def self . foo = ( value )
Thread . current [ :foo ] = value
end
啊! 我恨它。 但是你要做你该做的...
问题
如今,每个人都在担心并发性。 因此,人们正在使用诸如Thin或Puma之类的高档线程Web服务器。 但是,如果您使用Thread.current ,并且使用这些服务器之一,请Thread.current ! 值的保留时间可能比您预期的长,这可能会导致错误。 例如,如果我们在控制器中包含以下内容:
def index
Thread . current
评论0
最新资源