Да, это решение я уже изучил. Спасибо. Но по большей части интересуют POST запросы и в идеале при помощи стандартных методов ZP (чтобы была возможность менять UserAgent и добавлять пользовательские HTTP заголовки).Было на в конкурсной статье http://zennolab.com/discussion/threads/parallelnye-zaprosy.19609/
Спасибо. Разобрался.А что мешает заменить GET на POST https://help.zennolab.com/en/v5/zennoposter/5.15.0.0/webframe.html#topic609.html ?
Изначально я так и реализовал, после чего и столкнулся с проблемой. Дело в том, что потоки в рамках данного цикла стартуют одновременно, но код выполняют с разной скоростью (в основном за счет разной скорости ответа удаленного сервера), поэтому к финишу они приходят в разное время даже если каждый индекс умножить на секундную паузу.. Конечно, чем дольше пауза, тем выше вероятность последовательного завершения, но тем дольше и общее время выполнения. Настолько дольше, что весь смысл параллельности теряется.по ссылке, что давали выше в цикле есть индекс. ЧТо мешает сохранять последовательность за его счёт?
Буду благодарен, если покажете на примере того кода, который дан по ссылке выше.не надо ничего умножать. Нужно создать массив с количеством элементов равному количеству ссылок и записывать в цикле ответы по индексу
Хотя в общем-то я смысл понял, предложение имеет место быть, но в данном случае все осложняется тем, что каждый запрос должен содержать параметр в виде порядкового номера обращения к серверу и нельзя допустить, чтобы сперва обращение было сделано к 90 странице, а затем к 10 (если вернуться к примеру), т.е. по факту сами запросы должны быть сделаны последовательно, но без задержки на ожидание ответа.Буду благодарен, если покажете на примере того кода, который дан по ссылке выше.
Такое сделать нереально в многопоточном режиме. Ты никогда не можешь сказать какой из списка потоков будет выбран процессором следующим. Но можно примерно одновременно начать отправлять запросыХотя в общем-то я смысл понял, предложение имеет место быть, но в данном случае все осложняется тем, что каждый запрос должен содержать параметр в виде порядкового номера обращения к серверу и нельзя допустить, чтобы сперва обращение было сделано к 90 странице, а затем к 10 (если вернуться к примеру), т.е. по факту сами запросы должны быть сделаны последовательно, но без задержки на ожидание ответа.
это в рекламный раздел)Хотя в общем-то я смысл понял, предложение имеет место быть, но в данном случае все осложняется тем, что каждый запрос должен содержать параметр в виде порядкового номера обращения к серверу и нельзя допустить, чтобы сперва обращение было сделано к 90 странице, а затем к 10 (если вернуться к примеру), т.е. по факту сами запросы должны быть сделаны последовательно, но без задержки на ожидание ответа.
Понял. Жалко, конечно. Параллельность хорошая штука, но, видимо, не универсальна.Такое сделать нереально в многопоточном режиме. Ты никогда не можешь сказать какой из списка потоков будет выбран процессором следующим. Но можно примерно одновременно начать отправлять запросы
Выложите код что получилось, пожалуйста.Спасибо. Разобрался.