@Fox Помогло. Спасибо.
Синхронизация потоков и глобальные переменные.
-
Возможно ли читать из ресурса в глобальную переменную типа список и при чтении сразу удалять нулевую строку которую считал в локальную переменную, чтобы другие потоки случайно не взяли эту же строку? Это чтобы не трогать файл proxy.txt, например, когда используешь ресурсы. Либо еще один способ: иметь глобальную переменную индекса в глобальном списке(для экономии памяти) и при чтении увеличивать этот индекс сразу, чтобы другие потоки не взяли эту же строку. Есть ли подобие критических секций?
-
-
@DrPrime
Понял, но это хорошо когда я получаю список по ссылке, а не из файла, т.к. в файле постоянно будет количество проксей убывать и я их не смогу повторно уже использовать. А если я хочу обновить список проксей в зависимости сколько строк осталось в ресурсе(например просто копируя из другого файла, который не является ресурсом и строки из него соответственно не удаляются)? И еще. Если нет чекбокса на "записи", то я так понял прокси будут так же распределятся как в случае присутствия чекбокса, только из файла строки не будут удалятся? -
Вроде все понял. Еще вопрос. Если я выставлю обновление списка через время, но к этому времени не останется у меня в списке проксей, то обновление списка произойдет автоматом? Т.е. если в списке использованы все строки, то ресурс обновится?
-
@Mulin Я бы сделал функцию "TestProxy", которая проверяет прокси на валидность и меняет его в случае надобности. Такую функцию можно вызывать во всех критических местах.
Это все равно оставит шанс перезапуска, но сильно уменьшит его.
Я подумаю о галке "Менять прокси при отказе" в действии прокси.
