一. F_DUPFD :复制文件描述符 。 二. FD_CLOEXEC :设置close-on-exec标志。如果FD_CLOEXEC位是0,执行execve的过程中,文件保持打开。反之则关闭。 三. F_GETFD :读取文件描述词标志。 四. F_SETFD :设置文件描述词标志。 五. F_GETFL :读取文件状态标志。 六. F_SETFL :设置文件状态标志。 其中O_RDONL...
一. F_DUPFD :复制文件描述符 。 二. FD_CLOEXEC :设置close-on-exec标志。如果FD_CLOEXEC位是0,执行execve的过程中,文件保持打开。反之则关闭。 三. F_GETFD :读取文件描述词标志。 四. F_SETFD :设置文件描述词标志。 五. F_GETFL :读取文件状态标志。 六. F_SETFL :设置文件状态标志。 其中O_RDONL...
int fcntl(int fd, int cmd, ... //arg ); cmd选项: 一、复制文件描述符:F_DUPFD 二、更改设置文件描述标志:F_GETFD 、F_SETFD 文件描述符标志,是体现进程的文件描述符的状态. 当前只定义了一个文件描述符标志FD_CLOEXEC。 0: exec时不关闭已经打开的文件描述符 1: exec时关闭已经打开的文件描述符 三...
一. F_DUPFD:复制文件描述词。 二. FD_CLOEXEC:设置close-on-exec标志。如果FD_CLOEXEC位是0,执行execve的过程中,文件保持打开。反之则关闭。 三. F_GETFD:读取文件描述词标志。 四. F_SETFD:设置文件描述词标志。 五. F_GETFL:读取文件状态标志。 六. F_SETFL:设置文件状态标志。 其中O_RDONLY,O_WRONLY...
fd:文件描述词。 cmd:操作命令。 arg:供命令使用的参数。 lock:同上。 有以下操作命令可供使用 一. F_DUPFD :复制文件描述词 。 二. FD_CLOEXEC :设置close-on-exec标志。如果FD_CLOEXEC位是0,执行execve的过程中,文件保持打开。反之则关闭。 三. F_GETFD :读取文件描述词标志。
int fcntl(int fd, int cmd, ... /* arg */ ); 其中,操作类型由cmd决定。cmd可取如下值: F_DUPFD:复制文件描述符 F_DUPFD_CLOEXEC:复制文件描述符,新文件描述符被设置了close-on-exec F_GETFD:读取文件描述标识 F_SETFD:设置文件描述标识
int val=fcntl(fd,F_GETFD); val|=FD_CLOEXEC; fcntl(fd,F_SETFD,val); pid=fork(); if(pid==0) { //子进程中,此描述符并不关闭,仍可使用 char child_buf[2]; memset(child_buf,0,sizeof(child_buf) ); ssize_t bytes = read(fd,child_buf,sizeof(child_buf)-1 ); ...
F_GETFD 取得与文件描述符fd联合close-on-exec标志,类似FD_CLOEXEC。如果返回值和FD_CLOEXEC进行与运算结果是0的话,文件保持交叉式访问exec(), 否则如果通过exec运行的话,文件将被关闭(arg被忽略) F_SETFD 设置close-on-exec旗标。该旗标以参数arg的FD_CLOEXEC位决定 F_GETFL 取得fd的文件状态标志,如同...
F_GETFD 取得与文件描述符fd联合close-on-exec标志,类似FD_CLOEXEC.如果返回值和FD_CLOEXEC进行与运算结果是0的话,文件保持交叉式访问exec(),否则如果通过exec运行的话,文件将被关闭(arg 被忽略) F_SETFD 设置close-on-exec 旗标。该旗标以参数arg 的FD_CLOEXEC位决定。
函数原型int fcnt1(intfd, intcmd, struct flock*lock) fd:文件描述符 F_DUPFD:复制文件描述符 F_GETFD:获得fd的close-on-exec标志,若标志未设置,则文件经过exec函数之后仍保持打开状态 F_SETFD:设置close-on-exec标志,该标志以参数arg的FD_CLOEXEC位决定 ...