данные должны быть в внутри скобок {"age":"7","skill":"3","level":"14","time":"40","year":"27","aaa":"2","bbb":"47"}
Глобальные переменные.
-
Решил, блин, называется сэкономить ресурсы сервера.. Скрипт работал в 30 окон и каждый парсил свою страничку. Но я решил ускорить процесс отклика скрипта на события страницы. Так как через прокси данные идут медленнее, выделил я первый поток именно для мониторинга страницы, и через глобальные переменные сделал общение между потоками..
Тут и появились странности. Стандартный цикл проверки события на экране выдавал булево в переменную, далее скрипт через if уже выполнял действия. Дак этот цикл выгружая данные без задержек в глобальную переменную вешает BAS даже на стационарном, мощном компе. При том, мониторинг ресурсов показывает использование ресурсов не превышает 30%..
Я думал глобальные переменные можно использовать так же спокойно, как и обычные, оказалось всё не так просто.
@support Может ли постоянная запись или чтение глобальной переменной в многопотоке вешать BAS? -
@support Нашёл почему зависает. Но исправить пока не могу.
Если в цикле есть условие с данными из глобальной переменной, то BAS зависает.
Скрипт с цикламиА вот если не использовать циклы, то скрипт не зависает
Скрипт без цикловС метками тоже зависает
Скрипт с меткамиЗависает даже в условиях не использовать глобальные переменные
Скрипт без глобальных переменных в условиях -
@santilo Спасибо! Ларчик то, как говорится, просто открывался :)
С минимальной задержкой работает -
Похоже пока рано от зенки отказываться.
Наверно через 1-2 года BAS будет работать стабильно и будет дока по API?
Очень привлекает возможность уже сейчас использовать BAS под WINE.
А ZennoBox никто под WINE не пробовал?
Целиком ZennoPoster, судя по отзыву не работает в WINE:
https://appdb.winehq.org/objectManager.php?sClass=application&iId=17892 -
Да я выше по ветке посмотрел, мол виснет без задержки.
Да, весь синхронный код выполняется в одном потоке.
Функция лог является синхронной, поэтому такой код должен виснуть.
Но у этого подхода есть одно существенное преимущество - не нужно добавлять примитивы для синхронизации для многопоточного кода(локи, мьютексы и т. д.)
Наверно через 1-2 года BAS будет работать стабильно
Работу над БАС я начал в середине 2013, над стабильность я работал в первое время развивая среду и параллельно выпуская софт на нем. Сейчас ядро я почти не трогаю, а новый функционал добавляю через систему модулей.