Clear questions and runnable code get the best and fastest answer |
|
PerlMonks |
Re^6: How to import "global" variables into sub-scripts from main script?by choroba (Cardinal) |
on Mar 23, 2021 at 19:43 UTC ( [id://11130234]=note: print w/replies, xml ) | Need Help?? |
My opinion? Writable global variables are bad. Having a writer is much better as you can intercept it, which allows to debug it, wrap it, log it, etc. Global constants are basically OK, but it's still suspicious if a certain value is needed in several different places - maybe they should be moved closer together? The situation in mod_perl like environment is easy to demonstrate. But let's be more modern, it applies to plack as well, for example:
Now run it as (sorry for *nix shell, but that's what I run)
Now run several requests in parallel, e.g.
and check what the global state is several times:
Each worker keeps its own state, but you never know which one you'll hit.
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
In Section
Seekers of Perl Wisdom
|
|