The question is, my code should run all the time, but after running for a few hours or even hour it freezes. No CPU usage, no activity at all, like it's sleeping. This runs perl 5.16.1, latest Core, LWP. I'm wondering how to get know what is the reason for that freeze, how to know where it stopped? PS: i'm querying https host, if that matters. Addon: running strace gives this as last lines berofe freeze:my @requests; while ( ... ) { push @requests, ...; if (scalar @requests % 3 == 0) { &doRequests(\@requests); } } sub doRequests { my $requests = shift; my @coro = map { async { # here we get LWP::UserAgent object and to request } } @$requests; }
What does this mean?rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 nanosleep({1211417888, 0}, {1211354002, 168413065}) = ? ERESTART_RESTA +RTBLOCK (To be restarted) --- SIGWINCH (Window changed) @ 0 (0) --- restart_syscall(<... resuming interrupted call ...>) = ? ERESTART_REST +ARTBLOCK (To be restarted) --- SIGWINCH (Window changed) @ 0 (0) --- restart_syscall(<... resuming interrupted call ...>
In reply to Coro + LWP freezes by elgato
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |