Не корректно работает многопоточный режим работы с профилями

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 433
Баллы
113
Например у меня 1000 аккаунтов, которые используют 200 ip проксей. Шаблон работает, допустим, в 10 потоков.
Профили аккаунтов лежат в одной папке, берутся рандомно самые старые в работу и пересохраняются, чтобы повторно их не взять.
Важно чтобы в работе одновременно не было двух параллельно работающих профилей с одним ip, это приводит к блокировке работы сервисом.
Поэтому у меня шаблон на старте проекта имеет такой кубик:
C#:
var list = project.Lists["ips"];
string proxi = project.Variables["proxy"].Value;
lock(SyncObjects.ListSyncer)
{
   for (int i = 0; i < list.Count; i++) {
        if (list[i] == proxi) return null;
    }
    list.Add(proxi); // добавляем прокси в список чтобы другой профиль с таким же ip не смог работать параллельно
}
В списке "ips" привязанному к txt хранятся все текущие прокси. Этот кубик выводит по красной ветке профиль у которого ip прокси совпадает с любым ip из списка и профиль временно прекращает работать.
Когда шаблон заканчивает работу или прекращает работу из-за ошибки, то ip удаляется из списка.
Вроде бы все учел, всё много раз перепроверил и всё должно работать как часы, но тем не менее постоянно происходят накладки: два профиля с одного ip начинают работать с сервисом и происходит блокировка.
Что могло произойти что два профиля с одним ip работают параллельно?
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
  • Спасибо
Реакции: Astraport

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 433
Баллы
113
Как это определяется?
Если 2 профиля с одного ip начинают работать параллельно, то через некоторое время сервис временно блокирует их работу почти одновременно. Соответственно я отлавливаю это событие и вывожу в логи эту ошибку со строкой прокси профиля. И в логах регулярно вижу два сообщения о блокировке с одинаковыми ip с разницей в пару секунд.
 

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