У меня есть контроллер rails C
action index
, который вызывается дважды подряд, иногда с интервалом менее 10 мс.
Метод действия вызывает класс D
(который расширяет некоторые значения * 1006).* E
) метод w
, который возвращает self
.
После вызова D
. w
в C
. index
, у меня есть имя, которое возвращает ссылку на self
d
и используйте его для вызова D
. x
, который вызывает D
. y
, за которым следует D
. z
.Все методы x
, y
и z
ссылаются на переменную экземпляра @v
, которая представляет собой список, который может содержать тип Y
или Z
, слабо соответствующий методам y
и z
соответственно, которые обрабатывают эти два типа, используя одну и ту же переменную экземпляра.
Я вижу, что в потоке второго вызова index
, в вызове z
, @v
рассматривается как тип обработки Y
, что является неожиданным или нет?
Является ли мое ожидание действительным или недействительным, что y
и z
будут обрабатывать только Y
или Z
соответственнопри условии, что поток от index
до x
вызывает y
и z
с Y
и Z
типами в общем @v
?