счетчики действий прямые и обратные

Поддержка
  • @support - пожалуйста на "досуге" расскажите как сделать счетчик действий для многопотока - задача такая

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

  • @Turutur said in счетчики действий прямые и обратные:

    есть действие увеличить переменную - но нет уменьшить

    Используйте действие "Увеличить переменную" со значением -1.

  • @Turutur на даном этапе можно смотреть в "отчет о ресурсах" в правом верхнем углу программы

  • @wodopad я так пробовал работала некорректно выражение exspresion [[var]]=[[var]]-1 - так должно быть?

  • @Turutur ребята всем спасибо - пока остановился на таком способе - в последних действиях цикла получаю ресурс в список - получаю количество элементов и вывожу в лог - вроде работает

  • @support - пожалуйста подскажите вариант или дайте алгоритм как получать текущую позицию выполненных действий в многопотоке - то есть как реализовать простой счетчик -
    пробую делать так в многопотоке - в скрипте перед началом цикла назначаю перемнную со значением 0 - затем при успешном действии увелициваю ее на 1 и пишу в лог но лог с многопотока имеет такие показатели
    1
    1
    2
    3
    2
    4
    5
    4
    итд...
    как быть?

    и еще по ходу - интересует момент использования ресурсов - то есть сейчас на тексте задействовано 2 акаунта и 2 потока соответственно - лог имеет такой вид
    [18:13:56] Поток №2 : , всего пригласили 1
    [18:14:29] Поток №1 : , всего пригласили 1
    [18:14:29] Поток №2 : , всего пригласили 2
    [18:14:48] Поток №2 : , всего пригласили 3
    [18:14:49] Поток №1 : , всего пригласили 2
    [18:15:13] Поток №1 : , всего пригласили 3
    [18:15:25] Поток №2 : , всего пригласили 4
    [18:15:43] Поток №2 : , всего пригласили 5
    [18:15:57] Поток №1 : , всего пригласили 4
    [18:16:20] Поток №2 : , всего пригласили 6
    [18:16:37] Поток №1 : , всего пригласили 5
    [18:16:41] Поток №2 : , всего пригласили 7
    [18:16:56] Поток №1 : , всего пригласили 6
    [18:17:12] Поток №2 : , всего пригласили 8
    [18:17:27] Поток №1 : всего пригласили 7
    [18:17:56] Поток №1 : , всего пригласили 8
    [18:18:01] Поток №2 : , всего пригласили 9
    [18:18:18] Поток №2 : , всего пригласили 10
    [18:18:28] Поток №1 : всего пригласили 9
    [18:18:42] Поток №2 : , всего пригласили 11
    [18:18:50] Поток №1 : всего пригласили 10
    [18:19:17] Поток №2 : , всего пригласили 12
    [18:19:39] Поток №1 : всего пригласили 11
    [18:19:56] Поток №2 : всего пригласили 13
    [18:20:16] Поток №1 : всего пригласили 12
    [18:20:20] Поток №2 : всего пригласили 14
    [18:20:41] Поток №1 : всего пригласили 13
    [18:20:42] Поток №2 : всего пригласили 15
    [18:21:05] Поток №2 : всего пригласили 16
    [18:21:06] Поток №1 :, всего пригласили 14
    [18:21:24] Поток №2 : , всего пригласили 17
    [18:21:28] Поток №1 : , всего пригласили 15
    [18:21:47] Поток №2 : , всего пригласили 18
    [18:22:08] Поток №1 : уже приглашен или в группе
    [18:22:34] Поток №2 : всего пригласили 19
    [18:22:52] Поток №1 : всего пригласили 16
    [18:22:59] Поток №2 : всего пригласили 20
    [18:23:13] Поток №1 : всего пригласили 17
    [18:23:24] Поток №2 : всего пригласили 21
    [18:23:37] Поток №1 : всего пригласили 18
    [18:23:47] Поток №2 : всего пригласили 22
    [18:24:09] Поток №1 : всего пригласили 19
    [18:24:13] Поток №2 : всего пригласили 23

    из лога видно что переменные в начале совпадают - соответственно потоки идут в ногу, а позже один из потоков отстает от другого на 4 цикла 14 - 13-15-16-14
    с чем это связано? - просто реально визуально вижу что скрипит отдает предпочтение одному и потоков - один поток выполняется быстрее другого - второй висит по долго на одном месте...

  • @Turutur said in счетчики действий прямые и обратные:

    как быть?

    использовать такой же счетчик, но в глобальной переменной. Примеров уже было несколько на форуме.

  • @Turutur said in счетчики действий прямые и обратные:

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

    странны вопрос, уверен, что тебе нужно скрипты создавать )?
    очевидно же, что многопоток, а значит потоки "независимые" , каждый выполняет свое дело, где-то это "дело" занимает больше времени, где-то меньше.

  • @out said in счетчики действий прямые и обратные:

    @Turutur said in счетчики действий прямые и обратные:

    как быть?

    использовать такой же счетчик, но в глобальной переменной. Примеров уже было несколько на форуме.

    замечательно - вот ссылка ответ на запрос - я не могу найти ничего похожего http://community.bablosoft.com/search?term=счетчик&in=titlesposts

  • @out said in счетчики действий прямые и обратные:

    странны вопрос, уверен, что тебе нужно скрипты создавать )?
    очевидно же, что многопоток, а значит потоки "независимые" , каждый выполняет свое дело, где-то это "дело" занимает больше времени, где-то меньше.

    вопрос вовсе не странный - так как потоки выполняют практически равнозначные действия - например - оба потока авторизовались и грузят профиль ок - используя одни и те же мощности и размер страницы примерно одинаковый - но один аккаунт уже загрузил профиль и перешел к следующим действиям - а другой висит на одном месте - визуально не обосновано долго, даже если взять во внимание поочердный запуск потоков - поэтому и возникает такой вопрос

  • @Turutur где-то страница страница загрузилась быстрее , где-то еще догружается (то что видно визуально, не значит , что страница уже загрузилась)
    где-то вообще элемент не найден нужный, и он пытается его найти за таймаут 60сек и т.д. и т.п.

  • @out said in счетчики действий прямые и обратные:

    а пример щас дам 0_1482238756517_wer.xml

    Даааа @out спасибо но походу я реально не туда попал, из примера я абсолютно ничего не понял, ну да ладно.... а что означает логическое если каунт равен 0 - завершаем все остальные потоки - для чего и из-за чего?

  • @Turutur для примера.. чтобы стало понятно, как можно управлять работой потоков / их завершением или деланием чего-то другого, в зависимости от значений глобальных переменных.
    да, скорее всего это не ваше ) Значит, вам остается задавать ОЧЕНЬ конкретные вопросы, тогда участники форуме смогу давать конкретные ответы.

  • 0 Votes
    4 Posts
    347 Views
  • 0 Votes
    1 Posts
    296 Views
  • 0 Votes
    2 Posts
    591 Views
  • 0 Votes
    9 Posts
    1487 Views
  • 0 Votes
    3 Posts
    1152 Views