On Nov 7, 2007, at 5:05 PM, Michael Peters wrote:
Boysenberry Payne wrote:
If I created some of my static hashes and objects during the
PerlPostConfigHandler phase
and added them to either the configuration or log pools would that
help
me keep
some of my memory shared, assuming I could get at either pool
during the
PerlResponseHandler?
I think you're overthinking it here and getting yourself confused.
After being up for 36+ hours that's an understatement.
I have classes that create singleton objects with lots of static
parts.
Should I build these "constructs"
on server post config so they're already built in the child
processes as
shared memory rather than
building them in each child, increasing the non-shared memory use?
This is how this is typically done:
# in startup.pl
use My::Constructs;
# in My/Constructs.pm
package My::Constructs;
our @data = ();
# do something to build out your data structure...
Then in your application you can just access the data as
@My::Constructs::data and it will be shared by all your child
processes
(assuming you don't modify it during a request).
Ah, passing constructs directly, I've been trying to figure out that
for a while.
Can I do that using strict, or do I have to delimit it around the
reference?
I remember getting errors when I tried that before.
-bop