@Fox Привет.Я описывал задачу в этой теме https://community.bablosoft.com/topic/27417/вызов-многопоточной-функции
Дело в том,что я не могу вообще никак перевести свой скрипт на многопоток,у меня тупо,что в вызове функции в многопоток,что просто обычный многопоток,выполняет свою работу с данными по очереди,а не одновременно.И это очень сильно бьет по времени,а нужна именно скорость обработки.Все уже готово и скрипт рабочий полностью,но скорость обработки заставила воспользоваться многопотоком.Ранее,подобных проблем не замечал,а сейчас элементарную задачу не могу уже несколько дней решить.
Скрипт очень простой и работает без браузера вообще,в скрипте используется только одно взаимодействие с гет запросом.Пример скрипта я приложил в этой теме(но без запросов),он точно почти такой же,как и основа.
Логика такова:
1)Запускается скрипт (без всяких ресурсов изначально и данных) и создаются два ресурса.
2)Делается запрос на сайт,который обрабатывается в отдельной функции,т.е. обрабатывает полученные строки и записывает в ресурс.
3)Вызывается функция в несколько потоков,которая работает (должна работать) с каждой строкой из созданного ранее ресурса(уникальной)в отдельном потоке.Данные обрабатываются и записываются во второй ранее созданный ресурс.
4)Как только данные обработаны,ресурс переводится в список и список записывается в файл.Более ничего не делается.
-Сперва я думал,что проблема в создаваемых в ходе работы ресурсах,но нет.Создавал изначально ресурсы и то же самое было.
-Потом пробовал брать из файлов значения\потом создавать файлы по ходу и из них брать данные\сохранять напрямую пытался и.т.д
-Возможно думал стоят какие то ограничения из за слабого пк с 4 гб оперативы и взял сервер с 64 гб,но как обрабатывалась строка за 5 минут на моем пк,так же по скорости и на серваке.Ладно, с этим я уже ничего не поделаю из за регулярок в проекте,согласен.Но вот перевести на поток и хотя бы по 10 строк одновременно обрабатывать,очень бы помогло.А сейчас в любом случае,у меня,сколько бы потоков не выставил - работает все равно как один,просто по очереди разный поток берет свои данные(
Вывод лога в режиме записи через дебаггер
-
Приветствую.
Возникла идея написать модуль, который будет выводить лог в дебаггере переменных при работе в режиме записи и автоматически обновлять информацию. Например, последнюю строчку лога
Цель- освободить рабочее пространство в режиме записи.
К сожалению, у меня нет навыков по созданию модулей BAS. Может у кого-то есть готовые наработки подобного характера или дадите совет куда копать в первую очередь для реализации.Спасибо.
-
@romanbiz said in Вывод лога в режиме записи через дебаггер:
Приветствую.
Возникла идея написать модуль, который будет выводить лог в дебаггере переменных при работе в режиме записи и автоматически обновлять информацию. Например, последнюю строчку лога
Цель- освободить рабочее пространство в режиме записи.
К сожалению, у меня нет навыков по созданию модулей BAS. Может у кого-то есть готовые наработки подобного характера или дадите совет куда копать в первую очередь для реализации.Спасибо.
Чегось? Можете описать более подробно что должно получится в итоге? Отдельного окно лога? Или окно с менеджером переменных?
-
@romanbiz said in Вывод лога в режиме записи через дебаггер:
@Fox Спасибо за уточняющий вопрос, вывел через ресурс где и как нужно. То есть в дебаггере новый раздел, например.
Вы пишете скрипты с планшета через rdp соединение с сервером? А я думал я один так извращаюсь..
Но я вас всё равно не понимаю. Что вы хотите сделать? Изменить интерфейс? Что то и куда то вывести? Можете накидать хотя бы примерно в пейнте как вы видите свою задумку. -
-
@romanbiz said in Вывод лога в режиме записи через дебаггер:
@Fox
Слева внизу, там где
Переменные
РесурсыДобавить раздел Лог, в котором выводить лог например так, как он на скриншоте выведен через ресурс.
Таким образом в дебаггере слева внизу вместо двух разделов будет три:
Переменные
Ресурсы
ЛогНо в таком виде вы ещё сильнее уменьшаете рабочую зону BAS. Я как то думал заменить окно браузера на вывод лога, что бы можно было удобнее создавать скрипты на запросах не использующих браузер. Но реализовать с наскока не получилось, а больше я не колупался.
Самый простой на мой взгляд, хоть и самый костыльный вариант - это читать файл лога и помещать данные в ресурс или переменную. Реализовать подобное можно через модуль.
Есть ещё несколько более сложных вариантов с меньшей костыльностью, но я не вижу в них смысла.
-
@Fox мне не принципиально чтобы это был раздел, через ресурс тоже отлично подходит.
Можете помочь с реализацией? Был бы благодарен.Да, работаю через планшет достаточно часто, поэтому из за небольшого экрана в режиме записи лог слишком много места занимает, а переключаться между окнами не очень продуктивно.
-
@romanbiz said in Вывод лога в режиме записи через дебаггер:
@Fox мне не принципиально чтобы это был раздел, через ресурс тоже отлично подходит.
Можете помочь с реализацией? Был бы благодарен.К сожалению времени на это нет
-
@romanbiz said in Вывод лога в режиме записи через дебаггер:
@Fox в общем, решил задачу через написание скрипта который копирует каждые 3 секунды содержимое файла лога в файл ресурса.
я бы предложил ограничить количество строк в ресурсе, что бы не зависал интерфейс при больших объёмах данных.
