Как сделать многопоточный счетчик в файл

z@jivalo

Client
Регистрация
27.12.2016
Сообщения
798
Благодарностей
178
Баллы
43
задача такая, нужно что бы в многопотоке добавлялись порядковые числа в сам файл по возрастанию.
Например 10 потоков генерирует счетчик в файл 10 000 строк
и каждый поток берет себе по 1000
В итоге
1 поток 0-1000
2 поток 1000-2000
3 поток 2000-3000 ...
Как это сделать или есть другой способ не такой костыль ?

P.S. часто приходится пользоваться подобными счетчиками из файла по 500к и более строк
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 955
Благодарностей
781
Баллы
113
во входных настройках забить 1000 или другое чилсо, держать глобальную переменную - взятых строк потоками, т.е. первый поток начал работу и завершит её когда будет 1000 (там иф по номеру строки должен завершать и внутри должна быть итерация), так вот - когда поток начинает работать - он проверяет глобальную переменную и если ноль - то ставит - 1000, а сам начинает с нуля, второй поток начинает и проверяет глобал, чтоб не ноль был (если ноль - то это первый поток) - там 1000 - он её берёт как точку старта - и тут же увеличивает глобал на 1000 и так далее все потоки
 
  • Спасибо
Реакции: z@jivalo

z@jivalo

Client
Регистрация
27.12.2016
Сообщения
798
Благодарностей
178
Баллы
43
ох как все не просто, попробую реализовать
 

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