in reply to Re: Modperl2 + mpm_event + seemingly forgotten global vars
in thread Modperl2 + mpm_event + seemingly forgotten global vars
In my case there are exactly zero filehandles. But every handle will face this same problem. At the end them are only references. And if a thread can't remember the value of this variable, it will reinitilize it.
There as many handles as threads. There should be no problem. I'm also able to open as many (and more) handles in a single script, without modperl. Here is my `ulimit -a`:
core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 64000 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1048576 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
I would also await an error message for something like that. But there is nothing.
This global vars should loose its value only under the condition the thread ends. A java developer pointed me to the garbagge colector, but at the moment my knowhow at this area is not at that level i would want it. (Never was thinking about garbagge collection while using perl)
Let's assume them are ending, why is there a little rest of threads allowed to keep living and holding their vars? (I mean it is a computer. I was thinking everything in it has to be deterministic, so someone has to delete this vars)