#includeint fcntl(fd,F_GETLK/F_SETLK/F_SETLKW,struct flock *flockptr);F_GETLK:测试flockptr描述的锁,是否和现有锁冲突。冲突:现有锁写入flockptr中;不冲突:flockptr不变。F_SETLK:试图获得读锁、...
分类:
其他好文 时间:
2015-07-12 17:22:25
阅读次数:
122
设置描述符非阻塞的两种方法:1,调用 open 时,设置,O_NONBLOCK;2,调用 fcntl设置;具体如下:1,open("/xxx/file1",O_RDWR|O_NONBLOCK);2,val=fcntl(fd,F_GETFL,0); F_GETFL获取文件状态标识 val |...
分类:
其他好文 时间:
2015-07-12 17:07:22
阅读次数:
98
进程间的互斥,我们可以让这些进程共享某个内存区(mmap实现),然后在该共享内存区中使用某种类型的同步变量但是,fcntl记录上锁往往更容易使用。#include #include int fcntl(int fd, int cmd, ... /* struct flock *arg */ );st...
分类:
系统相关 时间:
2015-07-07 12:27:55
阅读次数:
137
顾名思义,creat创建新文件,open打开文件。但,open也可以起到创建新文件的作用。 #include?<fcntl.h>
int?creat(const?char?*pathname,?mode_t?mode);
//Returns:?file?descriptor?opened?for?write...
分类:
其他好文 时间:
2015-07-04 15:39:50
阅读次数:
411
/*
????浏览单个文件,按行或者按字节
????格式:?tail?filename?c/n?num,目前不支持其他格式
*/
#include?<stdio.h>
#include?<stdlib.h>
#include?<fcntl.h>
#include?<unistd.h>
/*
????错...
分类:
系统相关 时间:
2015-07-04 14:12:08
阅读次数:
204
记录锁的功能是:当一个进程正在读或修改文件的某个部分时,它可以阻止其它进程修改同一文件区。fcntl函数可以实现这一功能。#include int fcntl(int fd, int cmd, ... /* arg */ );对于记录锁,cmd是F_GETLK、F_SETLK或F_SETLKW,第三个参数是一个指向flock结构的指针:struct flock {...
分类:
其他好文 时间:
2015-07-02 19:34:57
阅读次数:
112
sys/types.h 是Unix/Linux系统的基本系统数据类型的头文件,含有size_t,time_t,pid_t等类型。 在应用程序源文件中包含 以访问 _LP64 和 _ILP32 的定义。此头文件还包含适当时应使用的多个基本派生类型。尤其是以下类型更为重要: clock_t 表示系统.....
分类:
其他好文 时间:
2015-06-27 09:44:36
阅读次数:
204
一、获取/设置套接字选项的方法
一个套接字描述符相关联的套接字选项很多。获取/设置套接字选项的方法:
1. getsockopt和setsockopt函数
2. fcntl函数
3. ioctl函数
二、 getsockopt和setsockopt函数
int getsockopt(int sockfd, int level, int optname, void* optval...
分类:
其他好文 时间:
2015-06-17 15:31:39
阅读次数:
173
服务器端:#include<stdio.h>#include<unistd.h>#include<stdlib.h>#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include<sys/socket.h>#include<sys/un.h>#include<stddef.h>charbuf[100];voidmain(vo..
分类:
系统相关 时间:
2015-06-17 01:59:44
阅读次数:
179