Логика многопоточного проекта

Porosenok

Client
Регистрация
26.09.2010
Сообщения
1 280
Благодарностей
96
Баллы
48
Добрый день, есть шаблон, которому даются аккаунты, и он дальше делает свою работу. Иногда бывает такое что никакие Bad end не срабатывают и просто инстанс закрывается, т.е. аккаунт не получится положить обратно в случае ошибки.

Все бы ничего, но шаблон многопоточный, т.е. например в файле лежит 5 аккаунтов, запускаю шаблон в зеннопостере, выскакивает форма c# из которой для каждого инстанса раздаю свой аккаунт и начинается работа шаблона. Потом допустим случается такое что один инстанс закрылся, т.е. 1 акк перестал работать, а остальные 4 работают.

Собственно вопрос - как сделать так чтобы при новом запуске инстанса, который закрылся, брался только свободный акк, а не трогал те что в работе в других инстансах?
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 440
Благодарностей
503
Баллы
113
Брать аккаунт из файла с удалением, good end + bad end > возвращаем аккаунт в список
 

Porosenok

Client
Регистрация
26.09.2010
Сообщения
1 280
Благодарностей
96
Баллы
48
Так иногда просто инстанс закрывается непонятно почему, и никакие бед енды не срабатывают
 

Ribas

Client
Регистрация
31.05.2014
Сообщения
1 440
Благодарностей
503
Баллы
113
А в логе что пишет когда инстанс закрывается?
 

evgen_po

Client
Регистрация
27.08.2013
Сообщения
848
Благодарностей
532
Баллы
93
Брать аккаунты с удалением из списка, и записывать назад в файл после выполнения всех действий в конце выполнения шаблона. Ну и на бед енд возврат повесить тоже.
Но если Вы говорите что данные иногда никак не возвращаются используй бед енд или не используя его (мной тоже было такое замечено), то можно делать с костылями.

Например, брать работающие аккаунты и записывать в отдельный файл.
Добавить логику в шаблоне - проверку на то, есть ли запись об этом профиле в файле или нет.
Если есть, берем следующий, т.е. ищем свободный.
После выполнения действий, стирать в этом файле данные о профиле. Иногда придется чистить этот файл (когда не будет срабатывать не гуд не бед енд - он набьется данными). Но так по крайне мере один аккаунт точно не будет работать в 2-ух потоках (инстансах) одновременно.
 

Porosenok

Client
Регистрация
26.09.2010
Сообщения
1 280
Благодарностей
96
Баллы
48
Брать аккаунты с удалением из списка, и записывать назад в файл после выполнения всех действий в конце выполнения шаблона. Ну и на бед енд возврат повесить тоже.
Но если Вы говорите что данные иногда никак не возвращаются используй бед енд или не используя его (мной тоже было такое замечено), то можно делать с костылями.

Например, брать работающие аккаунты и записывать в отдельный файл.
Добавить логику в шаблоне - проверку на то, есть ли запись об этом профиле в файле или нет.
Если есть, берем следующий, т.е. ищем свободный.
После выполнения действий, стирать в этом файле данные о профиле. Иногда придется чистить этот файл (когда не будет срабатывать не гуд не бед енд - он набьется данными). Но так по крайне мере один аккаунт точно не будет работать в 2-ух потоках (инстансах) одновременно.
спасибо, мысль прикольная, но вот если шаблон циклически выполняется так по-моему не выйдет
 

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