@MP said in Критический баг с переменными в node.js:
@UserTrue если они не глобальные, то это можно объяснить только багом, что переменные меняются из других потоков
я работают с nodejs и таких багов не встречал, сделайте демо скрипт с этим багом
Передо мной стояла задача - настроить количество потоков так, чтобы оно равнялось количеству выбранных элементов в неком ресурсе (список с галочками). Задача простая, написал соответствующий expression. Вот он:
В панеле с потоками отображается пока тоже нормально:
Останавливаю и снова запускаю скрипт - и вуаля - в панеле с потоками отображается какая-то дичь, но работает всё прекрасно:
Баг вроде и визуальный, но что-то мне подсказывает, что если я в этот скрипт через месяц загляну, то та хрень, которая отображается, мне нормального представления о количестве потоков не даст, надо будет сидеть и вспоминать, что я там писал. И пока это описывал, ещё идея пришла: на третьем скрине, который появился в результате бага, написано ещё и количество повторов, а это может сломать мою логику, которая построена на номере потока и его задаче. @support, я думаю, я саксимально наглядно описал баг, если будут какие-либо вопросы - обязательно уточню. Прошу пофиксить в следующей версии. Тестовый проект - bug.xml
Передо мной стояла задача - настроить количество потоков так, чтобы оно равнялось количеству выбранных элементов в неком ресурсе (список с галочками). Задача простая, написал соответствующий expression. Вот он:
В панеле с потоками отображается пока тоже нормально:
Останавливаю и снова запускаю скрипт - и вуаля - в панеле с потоками отображается какая-то дичь, но работает всё прекрасно:
Баг вроде и визуальный, но что-то мне подсказывает, что если я в этот скрипт через месяц загляну, то та хрень, которая отображается, мне нормального представления о количестве потоков не даст, надо будет сидеть и вспоминать, что я там писал. И пока это описывал, ещё идея пришла: на третьем скрине, который появился в результате бага, написано ещё и количество повторов, а это может сломать мою логику, которая построена на номере потока и его задаче. @support, я думаю, я саксимально наглядно описал баг, если будут какие-либо вопросы - обязательно уточню. Прошу пофиксить в следующей версии. Тестовый проект - bug.xml
Не уверен, что вам интересно почему так происходит (если всё же интересно, посмотрите как в коде скрипта используются ресурсы, двойных фигурных скобок вы там не найдёте)
Для вашей задачи лучше используйте новое апи для работы с ресурсами. Конкретный код, я приводил в теме Лайфхаки BAS
@DoctorKrolic said in Явный баг:
@Fox RMap("имя").length() в данном случае не сработало, а RMap("имя").toList() - так и вообще пишет, что такой функции не существует...
Значение любого ресурса представлено в виде строки, метод length() возвращает количество элементов в ресурсе, но элементов всего один.
Нужно получить значение ресурса:
RMap("q").at(0).split(",").length
тестовый скрипт
@DoctorKrolic said in Явный баг:
@Fox Ваш метод также работает, но визуальное отображение всё равно покорёжилось после перезапуска скрипта:
В каком смысле покорёжилось? На скриншоте тот же код, что я и приложил
@DoctorKrolic said in Явный баг:
@Fox Тип запуска одиночный -> особый и в количестве повторов на месте успешных выполнений какое-то выражение стоит, хотя на самом деле там 1.
Да, это баг, спасибо - сообщил. BAS некорректно парсит поле "количество потоков" разделяя значения по символу "запятая".