@joshuahutter225 Использовать только один раз работает для потоков, т.е. каждый поток берёт одну строку.
В вашем случае надо брать строку по индексу (первая строка - это 0). Создайте переменную, равную 0, она и будет регулировать взятие строки по индексу. После использования этой строки увеличьте эту переменную на 1 и возвращайтесь к взятию следующей строки.
Точно не знаю, возможно надо переводить переменную текстовика в список.
Списки и производительность
-
Добрый день, есть список в котором 1000000 строк из файла. Его нужно обрабатывать за минимальное время. Убрал все не нужные действия и условия. Разделил список на 100 частей по 10 к и добился того что 1000 строк обрабатывает в секунду путтем того что через каждую 1000 итераций сон на 1 милисекунду. Быстрее никак, ибо подвисает и сам бас во время работы кушает 20-30% процессора. Если подключать потоки то число обработанных строк остается таким же но делиться на количество потоков. Если запустить Bas 2 раза то производительность в 2 раза больше. Как быть в данном случае? делить список еще?
-
@warenuk как вариант обрабатывать их в nodejs она запускается в отдельном процессе и сама по себе работает гораздо бытсрей, чем js движок который встроен в BAS. Только через файл в нее и из нее данные гоняйте, тк бас через json это делает и на больших данных это займет время...
-
@FastSpace said in Списки и производительность:
@UserTrue Еще можно через mysql, скачать базу локально, запихать туда список. Модуль для работы есть с ней.
Да это понятно, я бд тут уже перестал предлагать, большинство их боится )))