Многопоточная функция и прерывание всего скрипта



  • В скрипте есть многопоточные функции, 1 и 2.
    Main работает в один поток.
    В функции 2 используется ресурс из файла.
    Когда ресурс заканчивается - функция 2 завершается, при этом продолжает выполняться весь скрипт (функция 1 - функция 2 с сообщением что ресурс закончился, по кругу).
    Подскажите пожалуйста, как прервать весь скрипт?



  • @lexikc, действие "Прервать Скрипт"



  • Весь вопрос по какому условию действие делать?



  • Если добавить проверку содержимого ресурса в main или а функцию 1, то при этой проверке будет расходоваться строка ресурса. Повтор не поможет т.к. только в пределах 1 потока работает.
    Голову уже сломал, как сделать.



  • @lexikc вроде если применять ресурс без параметра notreuse, то ничего дополнительно расходоваться не будет. А еще наверное обращение к израсходованному ресурсу генерирует исключение, которое можно просто отловить и обработать вышеописанной процедурой.



  • @lexikc, поставьте "Прервать Скрипт" после многопоточной функции которая завершается.



  • @NikitaKireev said in Многопоточная функция и прерывание всего скрипта:

    @lexikc вроде если применять ресурс без параметра notreuse, то ничего дополнительно расходоваться не будет. А еще наверное обращение к израсходованному ресурсу генерирует исключение, которое можно просто отловить и обработать вышеописанной процедурой.

    Только в пределах одного потока, а в моем случае потоки разные (в разных функциях). Расходуется, проверено.
    Если бы кто-то подсказал, что за исключение генерируется и как его использовать..

    @GhostZ said in Многопоточная функция и прерывание всего скрипта:

    @lexikc, поставьте "Прервать Скрипт" после многопоточной функции которая завершается.

    "Прервать скрипт" при каком условии?? Если я поставлю просто прервать скрипт, то он не будет циклично повторяться пока ресурс еще есть.
    Я не понимаю как описать условием что ресурс закончился..



  • @lexikc, действие "Количество Элементов В Ресурсе", if([[RESOURCE_LENGTH]]==0){Прервать Скрипт}



  • @GhostZ , огромное спасибо!
    Какжеясамнедогадался ))
    Не видел этот раздел меню и не работал с ним )


Log in to reply
 

  • 6
  • 3
  • 4
  • 1
  • 6
  • 1
  • 1
  • 12