当尝试从两个并发线程访问同一个类(或模型)时,我常常得到uninitialized constant $ClassOrModelName
。有时错误不会被抛出,可能是因为线程没有在同一时间访问类。我不确定,请纠正我。
我如何在两个并发线程中使用相同的类?谢谢!
代码:
threads = []
[1,2].each do |x|
threads << Thread.new do
p ModelName
end
end
threads.each(&:join)
有时会成功运行,有时会得到:
uninitialized constant ModelName