Изменение свойства, во время исполнения метода

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

diver
Сообщения: 114
Зарегистрирован: Пн мар 27, 2017 8:01 pm
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Re: Изменение свойства, во время исполнения метода

Сообщение diver » Ср мар 14, 2018 2:10 pm

Chainik писал(а):Я без особой необходимости стараюсь не использовать в коде "sleep", т.к. при этом приостанавливается выполнение кода. Чтобы выполнение не приостанавливалось, надо использовать "SetTimeOut".
Спасибо за информацию, но это не имеет никакого отношения к вопросу.
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: Изменение свойства, во время исполнения метода

Сообщение Chainik » Ср мар 14, 2018 2:51 pm

Ну да, я не сделал логический вывод.
Имелось ввиду то, что (возможно) код, который должен менять значение свойства "завис" на "sleep", а код, который запрашивает значение свойства, уже выполнился (с неизменившимся значением). Отсюда и проблема. Но это только предположение.
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Изменение свойства, во время исполнения метода

Сообщение olehs » Ср мар 14, 2018 4:22 pm

замените

Код: Выделить всё

gg("TestDimmer.StopDimmer") 
на

Код: Выделить всё

getObject("TestDimmer")->getProperty("StopDimmer") 
За это сообщение автора olehs поблагодарили (всего 2):
diver (Ср мар 14, 2018 8:31 pm) • olis (Пт янв 17, 2020 9:04 pm)
Рейтинг: 2.33%
diver
Сообщения: 114
Зарегистрирован: Пн мар 27, 2017 8:01 pm
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Re: Изменение свойства, во время исполнения метода

Сообщение diver » Ср мар 14, 2018 8:31 pm

olehs писал(а):замените

Код: Выделить всё

gg("TestDimmer.StopDimmer")
на

Код: Выделить всё

getObject("TestDimmer")->getProperty("StopDimmer")
Супер! Так работает. Спасибо!
А можно кратко - в чем разница, почему такой вариант заработал ?
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Изменение свойства, во время исполнения метода

Сообщение olehs » Ср мар 14, 2018 8:34 pm

В setGlobal/getGlobal есть кеширование. Видимо оно Вам все и наламывало
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Изменение свойства, во время исполнения метода

Сообщение olehs » Ср мар 14, 2018 9:04 pm

А вообще-то если хотите обращаться к свойству объекта из его метода, используйте

Код: Выделить всё

$this->getProperty('SomeProperty')
diver
Сообщения: 114
Зарегистрирован: Пн мар 27, 2017 8:01 pm
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Re: Изменение свойства, во время исполнения метода

Сообщение diver » Ср мар 14, 2018 9:59 pm

olehs писал(а):В setGlobal/getGlobal есть кеширование. Видимо оно Вам все и наламывало
Спасибо, буду знать!
Ответить