Одновременное использование данных?

goliafz

Client
Регистрация
05.07.2013
Сообщения
135
Благодарностей
13
Баллы
18
Возможно ли такое, что ЗенноПостер (допустим, 5 потоков) при задании взять первую строчку и удалить ее из файла одновременно в каких-либо потоках возьмется одна и та же строчка?

Если такое возможно, то как сделать, чтобы такого вообще не произошло?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Если список синхронизирован с файлом и стоят галки "загружать из файла" и "сохранять изменения", при взятии строки с удалением потоки будут брать всегда разные данные
 

goliafz

Client
Регистрация
05.07.2013
Сообщения
135
Благодарностей
13
Баллы
18
Если список синхронизирован с файлом и стоят галки "загружать из файла" и "сохранять изменения", при взятии строки с удалением потоки будут брать всегда разные данные
Этот момент я понял.

Подскажите, пожалуйста, как тогда лучше сделать.

У меня данные состоят из 6 строчек. Я так понимаю именно в этом варианте такое не пройдет, т.к. будут браться последовательно 1-6 строки. Берется 1 строка, сохраняется и т.д. В это время может другой поток взять 1 строку, которая по сути 2 от 1 потока. Верно мыслю?

Тогда вариант когда изначально создаются файлы и в каждый из них загоняются по 6 строчек данных. Дальше создаю список с названиями файлов и вот тогда не получится такого, что возьмется дваждый одинаковые данные. Значит действовать по 2 варианту? Верно?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 885
Баллы
113
Верно. Но есть проще варианты:
1. Между 6 строками установить разделитель не энтер, а что нибудь своё и настроить список брать строку с этим разделителем - возьмутся сразу 6 строк.
2. Выделить подсписко - выделяете из списка подсписок с диапазоном 0-5 и удалением и ложите в новый список. Дальше уже из второго списка получаете строки и обрабатываете их как нужно.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)