fcntl
- fcntl FILEHANDLE,FUNCTION,SCALAR
Implements the fcntl(2) function. You'll probably have to say
- use Fcntl;
first to get the correct constant definitions. Argument processing and value returned work just like
ioctlbelow. For example:You don't have to check for
definedon the return fromfcntl. Likeioctl, it maps areturn from the system call into"0 but true"in Perl. This string is true in boolean context andin numeric context. It is also exempt from the normal -w warnings on improper numeric conversions.Note that
fcntlraises an exception if used on a machine that doesn't implement fcntl(2). See the Fcntl module or your fcntl(2) manpage to learn what functions are available on your system.Here's an example of setting a filehandle named
REMOTEto be non-blocking at the system level. You'll have to negotiate$|on your own, though.Portability issues: fcntl in perlport.