007wan |
Отправлено: 24 Мая, 2019 - 15:49:47
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
Вопрос: Существует таймер, в котором выполняется скрипт. Если какой-то условие не удовлетворяет нужному результату (if else), то вызывается функция, которая прекращает действие таймера. Причем это условие в начале таймера. А теперь вопрос: возможно ли прекратить действия таймера в начале, даже когда он не завершит полностью свои действия(не дойдет до конца). Разумеется ответ я знаю - НЕТ. Нельзя прекратить прервать таймер там, где его отключили, но есть один нюанс ведь если таймер отключен, то по сути ввел в журнал событий, что он выключен из-за того, что условие не выполнено(Например, изображение не найдено), а он до сих пор идет вниз и ищет другие изображения. Получается, что в журнал он пишет: "Бот приостановлен, потому что, например, изображение 1 не найдено", а потом спускается ниже и ищет новые изображения, но ТАЙМЕР ЖЕ ПРИОСТАНОВЛЕН! зачем ему искать и спускаться ниже! Выглядит не очень красиво, кстати. И мой вопрос: Что же делать?
(Добавление)
Таймер винАпи такой же?
(Добавление)
007wan пишет: зачем ему искать и спускаться ниже! Я к чему виду то. Если он будет при отключении спускаться до конца, то будет искать все изображения и писать в лог, что все не найдены и тогда не поймешь какая ошибка. |
|
|
007wan |
Отправлено: 24 Мая, 2019 - 15:54:50
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
007wan пишет: какая ошибка А пчоему? потому что все изображения ищутся в нужный момент и нужное время. Если, например, изображение 2 ищется, когда я нажму изображение 1, то получается, что если изображение 1 не найдено в начале, то тогда он напишет ошибку в лог(журнал), а если не нашел, то искать дальше нечего и тогда в изображении 2 - тоже ошибка.
(Добавление)
Kibor пишет: Таймер можно прервать только переходом гото с него в код. А можно пример? Как его прервать, т.е выйти из него. |
|
|
Kibor |
Отправлено: 24 Мая, 2019 - 15:58:15
|
Эксперт
Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
007wan пишет: Я к чему виду то. Если он будет при отключении спускаться до конца, то будет искать все изображения и писать в лог, что все не найдены и тогда не поймешь какая ошибка.
Что мешает просто пропускать часть кода в таймере по if?
CODE:CREATE_TIMER(0, 1000)//Номер таймера, выполнение таймера через мсек.
{
отключить=0;
код
код
код
if (бла бла == 0)
{
отключить=1;
disabletimer(0);
}
if (отключить==0)
{
код
код
код
}
}
CODE:CREATE_TIMER(0, 1000)//Номер таймера, выполнение таймера через мсек.
{
код
код
код
if (бла бла == 0)disabletimer(0);
else
{
код
код
код
}
} |
|
|
007wan |
Отправлено: 24 Мая, 2019 - 16:19:43
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
Kibor , Kibor пишет: Только используйте гото Использую, но не одну метку полагаю буду использовать Kibor пишет: Одна метка на которую переходят при разных ситуациях Как сделать одну при разных ситуациях? Kibor пишет: Зачем лишняя проверка в конце loop на закончился ли цикл? Не понял. Я решил использовать свой пример.
(Добавление)
А понял вроде. Метка будет одна, т.е в конце таймера, в использовать goto goto... многор аз, что ыб вызывать метку(при разных ситуациях)..(Отредактировано автором: 24 Мая, 2019 - 16:21:26) |
|
|
|