while ($response = $async->wait_for_next_response)
{
threads->yield(); yield();
}
Гарантируется, что не завершится, пока $response
не станет ложным.Единственное ложное значение, которое вернет wait_for_next_response
, будет undef
.Вам нужно либо извлечь cookie внутри цикла, либо кэшировать последний хороший ответ внутри цикла.
Что-то вроде
my $last_response;
while ($response = $async->wait_for_next_response)
{
$last_response = $response;
threads->yield(); yield();
}
должно работать, хотя я не уверен, что вам нуженпетля на всех.Трудно сказать без полной программы.