|
times を使って、カレントプロセス(つまりそのCGI)のプロセス時間を得ます。 動作例
ここを押すと、実行結果がわかります。↓ ソースコード
sleep とビジーループの前後に、times を呼んでいます。
#!/usr/local/bin/perl
use CGI;
use strict;
my ($i, $j);
my @t1 = times;
sleep(1);
my @t2 = times;
for($i=$j=0; $i<10000; $i++) { $j *= 2; }
my @t3 = times;
my $cgi = new CGI;
$cgi->charset('EUC-JP');
print $cgi->header, $cgi->start_html('User and System Times');
print "<p><table border=\"1\">\n";
print "<tr><th>名前</th><th>値(起動直後)</th><th>値(sleep後)</th><th>値(ビジーループ後)</th></tr>\n";
print "<tr align=\"right\"><td>user(ユーザ実行時間[sec])</td><td>$t1[0]</td><td>$t2[0]</td><td>$t3[0]</td></tr>\n";
print "<tr align=\"right\"><td>system(システム実行時間[sec])</td><td>$t1[1]</td><td>$t2[1]</td><td>$t3[1]</td></tr>\n";
print "<tr align=\"right\"><td>cuser(子プロセスのuser)</td><td>$t1[2]</td><td>$t2[2]</td><td>$t3[2]</td></tr>\n";
print "<tr align=\"right\"><td>csystem(子プロセスのsystem)</td><td>$t1[3]</td><td>$t2[3]</td><td>$t3[3]</td></tr>\n";
print "</table></p>\n";
print $cgi->end_html;
|
▼ 個人的宣伝
|