работа со списками асинхронна?
-
скажите, если запустить в многопотоке такие вещи как 'взять строку из списка с удалением. записать список в файл" потоки будут ждать свой очереди, одновременно не будут эти действия делать?
-
@bronshik said in работа со списками асинхронна?:
скажите, если запустить в многопотоке такие вещи как 'взять строку из списка с удалением. записать список в файл" потоки будут ждать свой очереди, одновременно не будут эти действия делать?
Работа с одним и тем же файлом в многопотоке будет полна ошибок. Блокировки потоков нет, все будут писать и читать одновременно. Лучше используйте ресурс или глобальную переменную.
-
@fox said in работа со списками асинхронна?:
@bronshik said in работа со списками асинхронна?:
скажите, если запустить в многопотоке такие вещи как 'взять строку из списка с удалением. записать список в файл" потоки будут ждать свой очереди, одновременно не будут эти действия делать?
Работа с одним и тем же файлом в многопотоке будет полна ошибок. Блокировки потоков нет, все будут писать и читать одновременно. Лучше используйте ресурс или глобальную переменную.
Я вобщем хочу запустить такую функцию(вложение) в многопотоке. Это цикл for, с условием пока не кончатся элементы в списке. Чтение ИЗ файла происходит вне функции, до ее запуска и в однопоток. В функции есть только запись в файл, а читается только список. Админ как-то писал о том что синхронно, что асинхронно, сходу не могу найти. Надо бы завтра быстро прогнать пару файлов через этот шаблон, не хочу провозится. В однопоток все работает отменно, только идет часами
((
-
@bronshik said in работа со списками асинхронна?:
@fox said in работа со списками асинхронна?:
@bronshik said in работа со списками асинхронна?:
скажите, если запустить в многопотоке такие вещи как 'взять строку из списка с удалением. записать список в файл" потоки будут ждать свой очереди, одновременно не будут эти действия делать?
Работа с одним и тем же файлом в многопотоке будет полна ошибок. Блокировки потоков нет, все будут писать и читать одновременно. Лучше используйте ресурс или глобальную переменную.
Я вобщем хочу запустить такую функцию(вложение) в многопотоке. Это цикл for, с условием пока не кончатся элементы в списке. Чтение ИЗ файла происходит вне функции, до ее запуска и в однопоток. В функции есть только запись в файл, а читается только список. Админ как-то писал о том что синхронно, что асинхронно, сходу не могу найти. Надо бы завтра быстро прогнать пару файлов через этот шаблон, не хочу провозится. В однопоток все работает отменно, только идет часами
((Вы ведь в курсе, что потоки из "Вызов функции в несколько потоков" не будут знать о вашем списке в локальной переменной?
Как происходит запись данных в файл с добавлением строк? Сперва файл читается, затем к этой информации добавляется новая строка и этой информацией перезаписывается весь файл. Если несколько потоков будут делать это одновременно, могут возникнуть разного рода ошибки.
Для записи данных в файл в многопотоке лучше используйте ресурс "из файла" с опцией "запись" без "чтение".