Но появилась новая проблема. Иногда скрипт во время работы внезапно запрещает выделять действия. Т.е при клике на любое действие, оно просто не выделяется красным. Это второй баг, независимый от первого если что
Завершить выполнение скрипта через 10 минут
-
Суть такая у меня скрипт выполняется N1 секунд + смотрит видео N2 cекунд , если во время просмотра видео
N1+N2==600 сек надо чтобы заново перезапускался поток.
Я знаю как после выполнения действия(просмотр видео/спит) сделать прирывание,а как во время выполнения действия хз... -
@assd Не понимаю в чём проблема
Я знаю как после выполнения действия(просмотр видео/спит) сделать прирывание
Засекаешь время в начале работы скрипта, а дальше в цикле проверяешь, если 10 минут прошло, то прерываешь, если не прошло, то спать пару секунд.
-
@denis_krsk said in Завершить выполнение скрипта через 10 минут:
@assd Хм. А чем не устраивает действие сон?
Ему вроде как надо завершить работу потока после определённого времени, учитывать надо и загрузку страницы и выполнение скрипта
-
@denis_krsk У меня спит он рандомно от 60% до 100% длительности видео это часто больше 600сек
Трудность в том что некоторые видео не 600 сек. же
И получается мне надо вычислить рандомное время и как бы его спать по 2 сек и проверять не прошло ли больше 600 сек. -
@assd Ну проверку времение можно примерно так делать:
- Экшеном бас или js [[DATE_START]]=Date.now() перед началом цикла запоминаешь в переменную текущее время.
- Запускаешь цикл while с условием Date.now()-[[DATE_START]]<[[BREAK_TIME_SEC]]
- В теле цикла ставишь действие сон, минимум 1000ms
Вообщем примерно так если через выполнить код:
[[BREAK_TIME_SEC]]=400*1000; //Сколько сек смотрим видео в ms
[[DATE_START]]=Date.now(); //Время начала цикла
_do(function(){
if(Date.now()-[[DATE_START]]>[[BREAK_TIME_SEC]]) _break();
sleep(1000)!;
})!