7.21 読み取り可能なバイト数を取得する

ファイルハンドルから読み取り可能なバイト数を取得したい。

  • ioctl関数のFIONREADリクエストを使用する。
$size = pack("L", 0);
ioctl(FH, $FIONREAD, $size) or die;
$seze = unpack("L", $size);
# $sizeバイトの読み取りが可能