Сделайте OnApplicationEnd



  • @DrPrime, я в курсе, знаю это видео ;)



  • Может я что то пропустил..

    Сделайте пожалуйста аналог OnApplicationStart но чтоб в конце после окончания всех потоков запускалась.

    То есть появилась функция OnApplicationEnd, которая срабатывает по завершению всех потоков?



  • @Fox нет
    но теперь можно создать основную функцию, куда поместить все нужные части скрипта и выполнить сколько угодно раз в любое количество потоков, а после нее создать функцию, которая отработает перед завершением скрипта



  • @UA said in Сделайте OnApplicationEnd:

    @xclsv, разве имеются ввиду функции? Они давно уже внедрены, да, и в обучающих видео порой значатся, как стадии. Но @support написал про стадии в середине марта 2017. Что он имел ввиду? Загадка прям :)

    Думаю, то, что конкретно имел ввиду автор - не самый важный вопрос )
    Все-таки важнее то, что есть стадии для Вас )
    Лично для меня это промежуточные стадии скрипта, выполняемые в разное количество потоков с гибкими настройками. Вполне удобно реализовано через функции. За мелкими недочетами )



  • Но всетаки это не совсем что просил автор. Было бы удобно чтобы при ручной остановке скрипта отрабатывал нужную функцию.
    Например: сохранение/обновление cookie в файл, независимо от того когда именно остановился скрипт.
    Или это можно реализовать?



  • @DrPrime said in Сделайте OnApplicationEnd:

    , а после нее создать функцию, которая отработает перед завершением скрипта

    И перед ручной остановкой?



  • @OLEG said in Сделайте OnApplicationEnd:

    Но всетаки это не совсем что просил автор.

    То, что просил автор, реализуется с использованием текущего функционала программы.



  • @OLEG
    К сожалению это можно реализовать только написанием функции сохранения куков. И потом применять эту функцию во все скриптах после каждого действия(которое может привести к изменению куков) Лишняя нагрузка, но зато надежно.



  • Попробовал через эти функции в несколько потоков сделать так что бы скрипт не нужно было перезапускать посторонним софтом.

    Не знаю как теперь получать отчеты о удачных завершениях и неудачных. Нужны именно неудачные что бы знать какие проблемы возникают.
    0_1498823721732_upload-095ff93e-1431-484a-b09f-009c7bf5655a
    Вариант обернуть весь скрипт в игнор ошибок и выводить куда-то текст ошибок кажется диким, или может кто-то уже делал так?)


  • administrators

    @venom777 Добавлю в следующем релизе.

    Не знаю как теперь получать отчеты о удачных завершениях и неудачных.

    Сейчас только через игнор ошибок.



  • Подскажите есть ли в последней версии BAS возможность сделать OnApplicationEnd ? То что можно вызывать функции в несколько потоков, это я в курсе. Но все же, не понятно, как вызвать функцию в самом конце работы скрипта, когда все потоки отработали?



  • @Gang, нет. Тут имеется ввиду, что ты запускаешь один поток, в нем запускаешь функцию в несколько потоков, а после отработки этой функции можешь запустить другую функцию в один поток. Это и будет по функционалу аналог OnApplicationEnd.



  • @Antonio said in Сделайте OnApplicationEnd:

    @Gang, нет. Тут имеется ввиду, что ты запускаешь один поток, в нем запускаешь функцию в несколько потоков, а после отработки этой функции можешь запустить другую функцию в один поток. Это и будет по функционалу аналог OnApplicationEnd.

    Это выходит в тех скриптах где я хочу сделать OnApplicationEnd мне всегда нужно запускать скрипт в 1 базовый поток, а многопоточность, количество успехов/неуспехов задавать уже в настройках запуска функции в несколько потоков. Верно? То есть базовый поток всегда один и не больше, и этот поток уже в свою очередь будет порождать другие потоки? То есть этот базовый один поток просто как подложка для вызова функции в несколько потоков?



  • @Gang, именно.


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.