2ch特化型サーバ・ロケーション構築作戦 Part19
687 :
root▲ ★:
1/100秒対応:
通らないところで、use したものがない場合エラーになるようなので、
syscallで代用。
# 一部サーバではマイクロ秒もとる
if($ENV{SERVER_NAME} =~ /snow|ex14|live22/)
{
# 本当はこっちの方が普通だが、、、
#use Time::HiRes qw( gettimeofday );
#
#($GBX->{NOWTIME}, $GBX->{NOWMICROTIME}) = gettimeofday;
#
# FreeBSD 5.2.1Rなbananaサーバのperlには
# Time::HiResが入っていないので、
# 替わりにsyscallを使うことにする
my $tv = pack("L!L!", ()); # 2つのpackしたlong型変数
require 'sys/syscall.ph';
syscall(&main::SYS_gettimeofday, $tv, undef);
($GBX->{NOWTIME}, $GBX->{NOWMICROTIME}) = unpack("L!L!", $tv);
}
else
{
$GBX->{NOWTIME} = time ; #現在時刻
}