with_scope безопасен для потоков? - PullRequest
1 голос
/ 29 июля 2010

Изыскивая код рельсов, я наткнулся на with_scope .

Из того, что я могу сказать, он берет тип и условия области видимости, объединяет их в существующие условия для этого типа области, уступает блоку, а затем избавляется от дополнительной области.

Итак, моя первая мысль - в многопоточной среде (например, jruby on rails), что произойдет, если в то время, как поток 1 выполняет блок, поток 2 решает выполнить Model.find: all? Мне кажется, что это состояние гонки, ожидающее наступления.

Я что-то упустил?

1 Ответ

0 голосов
/ 31 июля 2010

Таким образом, хитрость в том, что если вы достаточно глубоко проследите, области действия будут установлены через Thread.current [метод], который будет выполнять метод, но только в области действия текущего потока.Я даже не знал, что это возможно для рубина ... думаю, вы узнаете что-то новое каждый день

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...