проблема со списком в многопотоке

Ptereks

Client
Регистрация
07.03.2019
Сообщения
70
Благодарностей
18
Баллы
8
Есть список с проксями, которые берутся из файла и записываются обратно для работы в многопотоке. По идее кол-во проксей не должно изменять в файле, но зенка туда записывает лишние. Хотелось бы узнать, я что-то делаю не так или это баг?

screen_1.png
screen_2.png
screen_4.png
screen_3.png
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 789
Благодарностей
5 721
Баллы
113

Saf

Client
Регистрация
24.05.2015
Сообщения
74
Благодарностей
54
Баллы
18
Косяк возможен при одновременном обращении к файлу, у меня тоже подобное было, и файлы дублировались(создавалась копия документа). Пока не перешел на работу с БД мучался, сейчас кайфую=)
 

Ptereks

Client
Регистрация
07.03.2019
Сообщения
70
Благодарностей
18
Баллы
8
в лог выводи строки которые взяты из списка и увидишь что не так.
Сделал, подожду результатов.


Косяк возможен при одновременном обращении к файлу, у меня тоже подобное было, и файлы дублировались(создавалась копия документа). Пока не перешел на работу с БД мучался, сейчас кайфую=)
В планах есть перейти на бд, но не прямо сейчас. Хотелось бы разобраться с текущей проблемой. Создание копий у себя пока что не наблюдал.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 642
Баллы
113
вариантов достаточно, и в 99% из них виноват пользователь)
Где-то в шаблоне есть возврат строки в список. Есть какой-то другой шаблон, работающий с этим файлом. Или где-то помимо работы как со списком еще идёт и работа как с файлом. Или еще что. Делаю ставку на первое
 
  • Спасибо
Реакции: Sergodjan

Ptereks

Client
Регистрация
07.03.2019
Сообщения
70
Благодарностей
18
Баллы
8
вариантов достаточно, и в 99% из них виноват пользователь)
Где-то в шаблоне есть возврат строки в список. Есть какой-то другой шаблон, работающий с этим файлом. Или где-то помимо работы как со списком еще идёт и работа как с файлом. Или еще что. Делаю ставку на первое
Вся работа со списком происходит только в начале шаба, собственно все скриншоты в теме.
Несколько шабов работаю с этим файлом. кубики одинаковые, т.к. скопированы. Из-за этого может возникать такая проблема?
Иногда открываю файл через блокнот, что бы посмотреть не появились ли новые строки, в ручную не редактирую в процессе выполнения шабов.
 

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
122
Баллы
43
Не пропускай сообщения с предложением перейти на БД. Сократишь себе время на разбор почему лезут косяки. Проходили)
 
  • Спасибо
Реакции: Saf

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 642
Баллы
113
Не пропускай сообщения с предложением перейти на БД. Сократишь себе время на разбор почему лезут косяки. Проходили)
если сам не косячишь, то с текстовыми списками косяки лезут только когда компьютер незапланировано завершает работу.
На мой взгляд, работа со списками у зеннопостера организовано замечательно
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 642
Баллы
113
Иногда открываю файл через блокнот, что бы посмотреть не появились ли новые строки, в ручную не редактирую в процессе выполнения шабов.
не должно. Но стоит понимать, что зеннопостер не обновляет файл мгновенно. Так что какой-то рассинхрон по времени может быть неучтенный
 

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
122
Баллы
43
если сам не косячишь, то с текстовыми списками косяки лезут только когда компьютер незапланировано завершает работу.
На мой взгляд, работа со списками у зеннопостера организовано замечательно
Когда начинается логика перебора взять вставить в многопотоке, что я не пробовал, в какой-то момент начинает глючить.
Если у тебя шаблон только на работе с списками, то все ок, но если лезут ошибки в других частях шаба то начинаются глюки. Хоть ставь бедэнд, хоть нет.
Спор бесполезен, мы его просто переведем в плоскость других косяков в отработке зенки шаблонов и т.п., т.к. не думаю что у человека шаб только со списками работает.
 

kagorec

Client
Регистрация
24.08.2013
Сообщения
994
Благодарностей
540
Баллы
93
Есть список с проксями, которые берутся из файла и записываются обратно для работы в многопотоке. По идее кол-во проксей не должно изменять в файле, но зенка туда записывает лишние. Хотелось бы узнать, я что-то делаю не так или это баг?

Посмотреть вложение 85938
Посмотреть вложение 85937
Посмотреть вложение 85936
Посмотреть вложение 85935
На какомто этапе стоит добавить "костыль" - удалить дубли. Не помешает.
 

Ptereks

Client
Регистрация
07.03.2019
Сообщения
70
Благодарностей
18
Баллы
8
Сделал маленький сниппет, на основе того, что прочитал на форуме, мб кому-нибудь будет полезно:

C#:
var list = project.Lists["proxy"];

lock (SyncObjects.ListSyncer) //Лочим для многопотока
{
    if (list[0] != "")
    {
        project.Variables["current_proxy"].Value = list[0];
    } else
    {
        list.RemoveAt(0);
        project.Variables["current_proxy"].Value = list[0];
    }
    list.RemoveAt(0);
}

instance.SetProxy(project.Variables["current_proxy"].Value);

lock (SyncObjects.ListSyncer) //Лочим для многопотока
{
    list.Add(project.Variables["current_proxy"].Value);
}
мб кто-то опытный взглянет на код и поправит если что.
 

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