Софт на BAS'e просто закрываеться.



  • Написал програму на BAS, запускаю ее, она работает без ошибок все хорошо.
    Поставил ее на сервер, работает все хорошо.
    На протяжении целого дня я чекаю и все ок.
    Как только ночью я иду спать, проверяю софт все ок.
    Утром просыпаюсь, вхожу на сервер, а софт выключен полностью.
    Когда захожу в папку в логами, там или нет его или есть но ошибок внизу нет.
    Из-за чего может програма полностью выключатся?



  • @vitalik8217 посмотрите логи windows может там есть что-то



  • @UserTrue попробую, спасибо



  • @UserTrue Ничего значимого не нашел(



  • @vitalik8217 said in Софт на BAS'e просто закрываеться.:

    Написал програму на BAS, запускаю ее, она работает без ошибок все хорошо.
    Поставил ее на сервер, работает все хорошо.
    На протяжении целого дня я чекаю и все ок.
    Как только ночью я иду спать, проверяю софт все ок.
    Утром просыпаюсь, вхожу на сервер, а софт выключен полностью.
    Когда захожу в папку в логами, там или нет его или есть но ошибок внизу нет.
    Из-за чего может програма полностью выключатся?

    Добавьте технические логи, что бы понять какое действие было последним перед вылетом.
    Поставьте первым действием в скрипте действие "выполнить код" с кодом:

    _sa = function(id)
    {
        log(id)
        ScriptWorker.SetCurrentAction(id)
    }
    
    

    BAS может вылетать из за бага с модулем "Обработка изображений"
    https://community.bablosoft.com/topic/4303/краш-bas-из-за-модуля-обработка-изображений

    но более вероятно, что у вас логическая ошибка приводящая к бесконечному циклу без задержки, в таком случае интерфейс зависает. И в зависимости от настроек ОС скрипт может быть завершён автоматически



  • @Fox said in Софт на BAS'e просто закрываеться.:

    _sa = function(id)
    {
    log(id)
    ScriptWorker.SetCurrentAction(id)
    }

    Хорошо, спасибо. А куда оно будет сохранять?



  • @vitalik8217 said in Софт на BAS'e просто закрываеться.:

    @Fox said in Софт на BAS'e просто закрываеться.:

    _sa = function(id)
    {
    log(id)
    ScriptWorker.SetCurrentAction(id)
    }

    Хорошо, спасибо. А куда оно будет сохранять?

    оно выводит id выполняемого действия в лог, в нём же после вылета и нужно будет смотреть



  • еще есть такой вариант как описано в вики https://wiki.bablosoft.com/doku.php?id=ru:debug_version

    @Fox может ты подскажешь, у меня винда 2012 R2 какую SDK мне надо поставить для дебага ?



  • @Bigma said in Софт на BAS'e просто закрываеться.:

    еще есть такой вариант как описано в вики https://wiki.bablosoft.com/doku.php?id=ru:debug_version

    @Fox может ты подскажешь, у меня винда 2012 R2 какую SDK мне надо поставить для дебага ?

    Для дебага можно не ставить sdk. Он необходим, если вы обнаружили утечку памяти



  • @Fox said in Софт на BAS'e просто закрываеться.:

    Для дебага можно не ставить sdk. Он необходим, если вы обнаружили утечку памяти

    Я ее родимую и обнаружил :) А вот с SDK запутался, там и под фрейм форки разные есть, и под разные винды. У меня серверная 2012 R2



  • @Bigma said in Софт на BAS'e просто закрываеться.:

    @Fox said in Софт на BAS'e просто закрываеться.:

    Для дебага можно не ставить sdk. Он необходим, если вы обнаружили утечку памяти

    Я ее родимую и обнаружил :) А вот с SDK запутался, там и под фрейм форки разные есть, и под разные винды. У меня серверная 2012 R2

    Можете установить SDK для Windows 10

    https://wiki.bablosoft.com/doku.php?id=ru:debug_version#как_сообщить_об_утечке_памяти
    c28edf80-305b-4440-8797-65a7c61e07a1-изображение.png

    Судя по мануалу ставить SDK не обязательно



  • да я уже видел обновления спасибо



  • @Fox said in Софт на BAS'e просто закрываеться.:

    BAS может вылетать из за бага с модулем "Обработка изображений"

    Он может вылетать не только из-за несовпадения размеров. Может и из-за нагрузки на память. Если использовать этот модуль как некое подобие нейронки=) для обработки и сравнивая изображений. Если машина слабенькая и памяти немного, то при массивах за 1 мб и упаковке это все в один кубик может и брякнуться сам). Но по моему это не баг, поэтому сообщать об этом не вижу смысла.



  • @f0cus said in Софт на BAS'e просто закрываеться.:

    @Fox said in Софт на BAS'e просто закрываеться.:

    BAS может вылетать из за бага с модулем "Обработка изображений"

    Он может вылетать не только из-за несовпадения размеров. Может и из-за нагрузки на память. Если использовать этот модуль как некое подобие нейронки=) для обработки и сравнивая изображений. Если машина слабенькая и памяти немного, то при массивах за 1 мб и упаковке это все в один кубик может и брякнуться сам). Но по моему это не баг, поэтому сообщать об этом не вижу смысла.

    При больших или бесконечных циклах без задержки интерфейс может зависнуть и в зависимости от настроек ОС закрыться сразу автоматически



  • @Fox Я потому и не считаю это багом. Я же когда мучил бас насоздавал распознавалок без сторонних сервисов) И раздавал их. капчи то как правило типовые у разных простых буксов и узнал о такой особенности. У меня работает у человека падает. Особенно "тяжолый" это порог если изображения большие, для предобработки изображения. Само сравнивание если в одном массиве эталонов до 500 кб тянет даже на слабой машине. Выше уже не у всех. Видимом как раз и срабатывает ограничение оси.



  • @f0cus said in Софт на BAS'e просто закрываеться.:

    @Fox Я потому и не считаю это багом. Я же когда мучил бас насоздавал распознавалок без сторонних сервисов) И раздавал их. капчи то как правило типовые у разных простых буксов и узнал о такой особенности. У меня работает у человека падает. Особенно "тяжолый" это порог если изображения большие, для предобработки изображения. Само сравнивание если в одном массиве эталонов до 500 кб тянет даже на слабой машине. Выше уже не у всех. Видимом как раз и срабатывает ограничение оси.

    Как вариант вынести само сравнение в отдельный модуль на плюсах, при асинхронном запуске интерфейс BAS'a зависать не будет. Весь код же готовый и лежит в репозитории, просто добавить функцию сравнения исходного изображения с массивом возможных.



  • @Fox Основные пользователи этих моих поделок с трудом понимают когда я пытаюсь объяснить схемы того или иного xpath выражения почему и зачем тут это, а зачем это. Там больше поиск что нажать, искать какие то репы)) да еще и что там компилировать, зачем? де кнопка бабло? А себе если уж так понабиться питон и сервак насиловать js для таких операций это не совсем то что надо как по мне. Мне было интересно вообще это возможно, да могу сказать возможно. Трудно? Нет это нудно, Стоит оно того? Хз для общего развития да. Для понимания в том числе и асинхронов. На слабых машинах вылетает и с ними. Для зарабатывания денег как капча сервис? Нет. Бас не заточен под такие задачи и при массовом потоке такие извраты сожрут все ресы дешевле использовать или софт для таких задач или сделать самому. Это если надо что то вот решить под частный случай.



  • У себя в проекте столкнулся с подобным, когда пытаюсь вызвать в асинхронке бесконечный цикл. Грубо говоря, вызываю из Main 5 функций, каждая из которых должно работать независимо. Но они висят что-то около 12 минут и дохнут, хотя логика ещё не закончена и вроде бы верхнего предела у выполнении асинхронки нет. Приходится всё время проверять их живость по номеру потока и при необходимости перезапускать.


Log in to reply