在rails代码中查看,我遇到了with_scope。
从我所知道的,它采用范围类型和条件,将它们合并到该范围类型的现有条件,产生块,然后去除额外的范围。
所以我的第一个想法是在多线程环境中(比如jruby on rails),当线程1执行块时,线程2决定做一个Model.find:all会发生什么?在我看来,等待发生的竞争条件。
我错过了什么吗?
答案 0 :(得分:0)
所以这里的诀窍是如果你跟踪得足够深,那么范围是通过Thread.current [方法]来设置的,它将执行方法但仅在当前线程的范围内。我甚至不知道红宝石有可能......猜你每天都学到新的东西