Do you have a question? Post it now! No Registration Necessary. Now with pictures!
- Posted on
- $^T is not working as expected from mod_perl
- Patrick Hartman
February 18, 2010, 1:53 am
rate this thread
I was using this to calculate execution time at the bottom of a
print time - $^T;
However I noticed that the time just got a little bit longer everytime
I ran it despite the apparent page load time not changing at all. I
changed it to this:
printf "BEG: $^T \n";
printf "END: ". time;
And the $^T was outputting the same start time for every execution;
every time I would load the page, the time just got longer and longer
since only the end time was updating.
This problem is only happening when I execute from mod_perl / Apache.
If I go to the command line and execute it through there it works
fine. I have Apache on my local computer, so both places are pointing
to the same installation of Perl.
Any ideas what would be causing this?
Re: $^T is not working as expected from mod_perl
Sorry, I should have searched Google first. I will post the solution I
found and beg for forgiveness :).
"Under mod_perl, processes don't quit after serving a single request.
Thus, $^T gets initialized to the server startup time and retains this
value throughout the process's life. Even if you don't use this
variable directly, it's important to know that Perl refers to the
value of $^T internally."
- Martijn Lievaart
February 18, 2010, 6:55 am