|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrey Sapozhnikov 2:5020/400 23 May 2002 14:17:37 To : Victor Wagner Subject : Re: Time --------------------------------------------------------------------------------
Victor Wagner wrote:
> AMB> Hе подскажете ли, как узнать время, за которое сервер
> AMB> обрабатывает, скрипт и формирует страницу? Заранее сенкс.
> ....
> use Time::HiRes qw(gettimeofday tv_interval);
> my $t0=[gettimeofday];
> my $q=new CGI;
Я бы рекомендовал использовать аналогичные функции из
модуля Benchmark. Они позволяют мерять не только астрономическое, а
еще и машинное время (системное и пользовательское), что зачастую
более информативно.
use Benchmark;
$t0 = new Benchmark;
# ... your code here ...
$t1 = new Benchmark;
$td = timediff($t1, $t0);
print "the code took:",timestr($td),"\n";
Hа *nix-like операционках можно учесть и время инициализации
интерпретатора и компиляции скрипта с помощью системного вызова
getrusage. Hе знаю, есть ли к нему стандартная обертка, но в
крайнем случае можно вызвать и напрямую, разобрав возвращаемую
структуру unpack-ом... Или использовать недокументированную
в Benchmark.pm возможность - вызвать timestr передав ей не
значение timediff, а сам объект Benchmark. Он будет содержать
system и user time от старта процесса (правда wallclock будет
бесполезен).
Андрей
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/52843b1e1ca1.html, оценка из 5, голосов 10
|