В условии if выполните действие succes или fail (в Логика скрипта)
остановить поток
-
-
@xtra said in остановить поток:
@Fox шикарно)Но это я знаю.Порой поток подвисает из за случайной ошибки(страница не догрузилась,или еще что то)в общем отловить эту ошибку нереально,по этому данный способ увы не подходит(
Если страница не загрузилась, то поток итак завершится с ошибкой
-
@xtra said in остановить поток:
@Fox обернуто в игнор ошибок,иначе выбивает по таймауту все время,хотя страница загружается
Можете вместо игнора ошибок отключить полное ожидание загрузки страницы

и добавить ожидание конкретного элемента на этой странице. Или установить условие после игнора ошибок на соответствующие действия ошибки или успеха
-
В общем попросил человека он подсобил,но что то где то пошло не так)
В общем в проекте создаем ресурс stop из файла.
в начале скрипта вставляем выполнить код и туда пишем:function _sa() { var pause = native("filesystem", "readfile", JSON.stringify({value: RInfo("stop","Location"),base64:false,from:0,to:0})); if(parseInt(pause) == thread_number()){ native("filesystem", "writefile", JSON.stringify({path: RInfo("stop","Location"),value: ('Поток остановлен').toString(),base64:false,append:false})) success("Стоп") } }Теперь в файл-ресурс вставляем цифру которая совпадает с номером потока которой надо остановить.Все работает но только в записи)))В запуске не читает повторно файл-ресурсПочему так,есть у кого какие соображения?
-
@xtra said in остановить поток:
В общем попросил человека он подсобил,но что то где то пошло не так)
В общем в проекте создаем ресурс stop из файла.
в начале скрипта вставляем выполнить код и туда пишем:function _sa() { var pause = native("filesystem", "readfile", JSON.stringify({value: RInfo("stop","Location"),base64:false,from:0,to:0})); if(parseInt(pause) == thread_number()){ native("filesystem", "writefile", JSON.stringify({path: RInfo("stop","Location"),value: ('Поток остановлен').toString(),base64:false,append:false})) success("Стоп") } }Теперь в файл-ресурс вставляем цифру которая совпадает с номером потока которой надо остановить.Все работает но только в записи)))В запуске не читает повторно файл-ресурсПочему так,есть у кого какие соображения?
Вы зря перетираете изначальный код функции, так же ваш код сбросится на дефолтный после некоторых действий (например "загрузить").
-
@xtra said in остановить поток:
@Fox а какой изначальный код?если не сложно скиньте.И какие вообще будут советы чтоб не сбрсывался?
А вы выведите функцию в лог без вызова и увидите изначальный код. Что бы не сбрасывался, нужно поместить функцию в глобальную переменную
_sa = function () { //code }но я один фиг не понимаю что и для чего вы делаете
-
@Fox для чего:К при меру загружается страница,без обертывания в игнор в 70% случаев будет ошибка,хотя сама страница загрузится нормально(без понятия в чем причина но уже все перепробовал).В итоге оборачиваем в игнор и все работает НО!Раз в 100 загрузок страницы(к примеру) страница не загружается!или загружается на половину.А дальше идет цикл по поиску определенных элементов которые 100% должны там быть но они могут подгрузиться позже,или наоборот ждать пока элемент пропадет со страницы...в общем поток зависает в цикле.Еще как вариант на сайте меняется динамически элементы и все отследить невозможно,опять же поток зависает в цикле.Для этого и делается возможность остановить 1 конкретный поток в ручную без перезапуска всего скрипта
-
@xtra said in остановить поток:
К при меру загружается страница,без обертывания в игнор в 70% случаев будет ошибка,хотя сама страница загрузится нормально(без понятия в чем причина но уже все перепробовал)
А вариант, который я предложил вам выше не сработал? Или вы его даже не проверяли?
@xtra said in остановить поток:
Раз в 100 загрузок страницы(к примеру) страница не загружается!или загружается на половину.А дальше идет цикл по поиску определенных элементов которые 100% должны там быть но они могут подгрузиться позже,или наоборот ждать пока элемент пропадет со страницы...в общем поток зависает в цикле.Еще как вариант на сайте меняется динамически элементы и все отследить невозможно,опять же поток зависает в цикле.Для этого и делается возможность остановить 1 конкретный поток в ручную без перезапуска всего скрипта
Используйте "игнорирование ошибок" на тех действиях, которые могут вернуть ошибку и обрабатывайте эту ошибку, а не игнорируйте
-
@Fox отключить полное ожидание загрузки страницы?Пробовал,работает через раз( я ж говорю сайт активно борется с ботами,ошибку выдать может где угодно!Большую часть я отследил и "обработал" но есть парочка таких которые в режиме записи не могу словить(Появляется на любом действии с сайтом и сотню раз пройдет все норм а на 101 выдаст эту ошибку
-
_sa = function () { var pause = native("filesystem", "readfile", JSON.stringify({value: RInfo("stop","Location"),base64:false,from:0,to:0})); if(parseInt(pause) == thread_number()){ native("filesystem", "writefile", JSON.stringify({path: RInfo("stop","Location"),value: ('Поток остановлен').toString(),base64:false,append:false})) success("Стоп") } }так все сработало,вдруг кому понадобится
