home *** CD-ROM | disk | FTP | other *** search
/ ftp.cse.unsw.edu.au / 2014.06.ftp.cse.unsw.edu.au.tar / ftp.cse.unsw.edu.au / pub / doc / languages / perl / nutshell / ch4 / sysread < prev    next >
Encoding:
Text File  |  1992-10-18  |  356 b   |  15 lines

  1. while ($len = sysread(FROM, $buf, 16384)) {
  2.     if (!defined $len) {
  3.         next if $! =~ /^Interrupted/;
  4.         die "System read error: $!\n";
  5.     }
  6.     $offset = 0;
  7.     while ($len) {          # Handle partial writes.
  8.         $written = syswrite(TO, $buf, $len, $offset);
  9.         die "System write error: $!\n"
  10.             unless defined $written;
  11.         $len -= $written;
  12.         $offset += $written;
  13.     };
  14. }
  15.