in reply to Need Help in Understanding Some Code - Map and Scalar Questions
What next if scalar(%pids) and not $pids{$proc->pid}; is saying is: Ignore any pids in the process table which are not in our hash of pids mentioned in the Plack request path; don't process the rest of the loop for those, just go on to the next one. But actually, if the Plack hash is empty, don't even bother checking for whether the pid is present, since it won't be.
Mind you, if the hash is empty, none of the pids will be present, so I would short circuit the whole routine and not test any of the pids. But it's easy to think of that now, when I have to explain things, I'm not guaranteeing i would think of it in that situation.
You tried a hash with values in it, now try an empty hash ... you'll get back zero, which is false in boolean context.
As Occam said: Entia non sunt multiplicanda praeter necessitatem.
|
|---|