是否可以在多个线程中共享会话变量? 我想根据会话变量在新线程中运行循环。 问题是我在主线程中更改会话变量并且它没有反映在创建的新线程中?
def log_in(user)
begin
session[:user_id] = user[:id]
storeAuthToken(user)
session[:logged] = true
Thread.new do
while true do
if(! session[:logged])
break
else
begin
#do something
sleep 5
rescue => e
p e
end
end
end
end
rescue => e
end
end
答案 0 :(得分:0)
在这种情况下,全局变量是最佳候选者。在Rails中,以美元符号($)开头的变量是全局变量。
或者您可能想尝试在应用程序范围内可用的配置变量或YAML键值对。