Movatterモバイル変換


[0]ホーム

URL:


functions /fcntl
(source,CPAN)
You are viewing the version of this documentation from Perl 5.30.3.View the latest version
fcntl may also refer to the module:Fcntl
#fcntl FILEHANDLE,FUNCTION,SCALAR

Implements thefcntl(2) function. You'll probably have to say

use Fcntl;

first to get the correct constant definitions. Argument processing and value returned work just likeioctl below. For example:

use Fcntl;my $flags = fcntl($filehandle, F_GETFL, 0)    or die "Can't fcntl F_GETFL: $!";

You don't have to check fordefined on the return fromfcntl. Likeioctl, it maps a0 return from the system call into"0 but true" in Perl. This string is true in boolean context and0 in numeric context. It is also exempt from the normalArgument "..." isn't numericwarnings on improper numeric conversions.

Note thatfcntl raises an exception if used on a machine that doesn't implementfcntl(2). See theFcntl module or yourfcntl(2) manpage to learn what functions are available on your system.

Here's an example of setting a filehandle named$REMOTE to be non-blocking at the system level. You'll have to negotiate$| on your own, though.

use Fcntl qw(F_GETFL F_SETFL O_NONBLOCK);my $flags = fcntl($REMOTE, F_GETFL, 0)    or die "Can't get flags for the socket: $!\n";fcntl($REMOTE, F_SETFL, $flags | O_NONBLOCK)    or die "Can't set flags for the socket: $!\n";

Portability issues:"fcntl" in perlport.

Perldoc Browser is maintained by Dan Book (DBOOK). Please contact him via theGitHub issue tracker oremail regarding any issues with the site itself, search, or rendering of documentation.

The Perl documentation is maintained by the Perl 5 Porters in the development of Perl. Please contact them via thePerl issue tracker, themailing list, orIRC to report any issues with the contents or format of the documentation.


[8]ページ先頭

©2009-2025 Movatter.jp