Взять "первую строку" и удалить в конце шаблона(многотопок)

default

Client
Регистрация
27.09.2018
Сообщения
127
Благодарностей
28
Баллы
28
Приветствую, на данный момент работа шаблона реализована через список, который привязан к файлу.
Беру первую строку с удалением из этого списка и далее выполняется шаблон. Многопоток работает без проблем.

Но в моём шаблоне могут быть такие ситуации, например могу приделать банальный цикл, или просто какие-то проблемы будут в шаблоне(пойдёт бесконечно разгадывать капчи например, я могу через счетчик сделать 3-4 перегада, но при многих условиях у меня могут бесконечно меняться прокси и тд). В общем суть в том, что при остановке шаблона остановка может происходить длительное время, либо при циклах вообще может это произойти не скоро(в зависимости от счетчика).

так вот сам вопрос: как правильнее удалить строку из файла в конце шаблона? Мне кодер по крайней мере давным давно писал подобное в шаблоне(строка удаляется в конце шаблона (если он полностью выполнился)). При этом многопоток работает идеально. Но сейчас я сам купил себе zennoposter и возникают вопросы иногда.

я вроде не особо тупой, решения сам могу найти думаю в итоге. Но нужна хотя бы идея, как это сделать.
 

ermax

Client
Регистрация
06.10.2012
Сообщения
142
Благодарностей
51
Баллы
28
Вы шаблон выложите, чтоб понять как лучше вам сделать.
А так, логика->BadEnd->ваш_список->удалить_строку
 
  • Спасибо
Реакции: default

default

Client
Регистрация
27.09.2018
Сообщения
127
Благодарностей
28
Баллы
28
Вы шаблон выложите, чтоб понять как лучше вам сделать.
А так, логика->BadEnd->ваш_список->удалить_строку
это я примерно понимаю, но у меня например 10 потоков. я примерно изобразил свой шаблон(может быть там что-то не совсем нормально, но вроде работает). Там есть пауза - 15сек(под ней можно подразумевать действие с переменными(переходы по сайтам/регистрации и тд, и по итогу по какому-то исходу придёт в сохранение в файл результатов(где и есть это сохранение))).

Так вот при 10 потоках в моём шаблоне, всё более-менее нормально вроде работает. Т.е. 1-ый поток поток берёт 1-ую строку, 2-ой поток берёт 2-ую строку, 3-ий поток берёт 3-ю строку и тд, т.е. потоки не хватают одинаковые строки. Но при изменении списка идёт соответственно и изменение файла. А я хотел бы, чтобы поток также работал(не брал одинаковые строки(но шел по порядку в каком-то смысле)), при этом чтобы файл исходный и файл результатов изменялись только по окончанию действия шаблона. Т.е. файл результатов так и делается, но как сделать, чтобы в это же время и исходный поменялся - в этом для меня проблема.

Т.е. цель добиться схожей работы шаблона, но изменение source файла было чтобы после окончания шаблона, при этом чтобы не нарушался многопоток. Т.е. если взята строка - не изменять исходный файл до тех пор, пока не закончилось действие шаблона. Просто в моём случае, строка сразу же удаляется в начале шаблона, в том числе из файла. А хотелось бы, чтобы из файла удалилась только в конце шаблона.
 

Вложения

Последнее редактирование:
  • Спасибо
Реакции: luisa

ermax

Client
Регистрация
06.10.2012
Сообщения
142
Благодарностей
51
Баллы
28
Я понял.
Вы усложняете только.

Проще в начале брать строку с удалением, и в случае если в шаблоне происходит ошибка, до добавлять эту строку обратно с список, от куда вы ее и брали.
Лично у меня все шаблоны так и работают.
 
  • Спасибо
Реакции: default

default

Client
Регистрация
27.09.2018
Сообщения
127
Благодарностей
28
Баллы
28
Я понял.
Вы усложняете только.

Проще в начале брать строку с удалением, и в случае если в шаблоне происходит ошибка, до добавлять эту строку обратно с список, от куда вы ее и брали.
Лично у меня все шаблоны так и работают.
понял, думалось, что всё как-то можно просто это решить, в любом случае в бОльшей мере было интересно, как это реализовывается. в любом случае спасибо
 

luisa

Client
Регистрация
17.06.2019
Сообщения
42
Благодарностей
6
Баллы
8
это я примерно понимаю, но у меня например 10 потоков. я примерно изобразил свой шаблон(может быть там что-то не совсем нормально, но вроде работает). Там есть пауза - 15сек(под ней можно подразумевать действие с переменными(переходы по сайтам/регистрации и тд, и по итогу по какому-то исходу придёт в сохранение в файл результатов(где и есть это сохранение))).

Так вот при 10 потоках в моём шаблоне, всё более-менее нормально вроде работает. Т.е. 1-ый поток поток берёт 1-ую строку, 2-ой поток берёт 2-ую строку, 3-ий поток берёт 3-ю строку и тд, т.е. потоки не хватают одинаковые строки. Но при изменении списка идёт соответственно и изменение файла. А я хотел бы, чтобы поток также работал(не брал одинаковые строки(но шел по порядку в каком-то смысле)), при этом чтобы файл исходный и файл результатов изменялись только по окончанию действия шаблона. Т.е. файл результатов так и делается, но как сделать, чтобы в это же время и исходный поменялся - в этом для меня проблема.

Т.е. цель добиться схожей работы шаблона, но изменение source файла было чтобы после окончания шаблона, при этом чтобы не нарушался многопоток. Т.е. если взята строка - не изменять исходный файл до тех пор, пока не закончилось действие шаблона. Просто в моём случае, строка сразу же удаляется в начале шаблона, в том числе из файла. А хотелось бы, чтобы из файла удалилась только в конце шаблона.
Привет а ты как сделал чтобы потоки не брали одинаковые строки?
 

maestro202

Client
Регистрация
08.05.2016
Сообщения
81
Благодарностей
31
Баллы
18
Привет а ты как сделал чтобы потоки не брали одинаковые строки?
Автор написал, что строки берутся с удалением с файла. Соответственно одинаковые строки потоки не возьмут)
 
  • Спасибо
Реакции: luisa

luisa

Client
Регистрация
17.06.2019
Сообщения
42
Благодарностей
6
Баллы
8

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