
UNIX环境高级编程
zhuix7788
这个作者很懒,什么都没留下…
展开
-
unit 3:fcntl函数
3.14节:fcntl函数:使用: if ((val = fcntl(atoi(argv[1]), F_GETFL, 0)) < 0) err_sys("fcntl error for fd %d", atoi(argv[1]));1、获取文件的flags,即open函数的第二个参数: flags = fcntl(fd,F_GET原创 2015-01-28 16:50:56 · 416 阅读 · 0 评论 -
Linux进程同步之记录锁(fcntl)
http://www.cnblogs.com/dyllove98/archive/2013/06/28/3161371.html记录锁相当于线程同步中读写锁的一种扩展类型,可以用来对有亲缘或无亲缘关系的进程进行文件读与写的同步,通过fcntl函数来执行上锁操作。尽管读写锁也可以通过在共享内存区来进行进程的同步,但是fcntl记录上锁往往更容易使用,且效率更高。记录锁的功转载 2015-02-28 15:00:05 · 631 阅读 · 0 评论 -
简单的TCP通信
//客户端:#include #include #include #include #include #include #include #include #define MAXLINE 1024int main(int argc, char** argv){ int sockfd, ret; struct sockaddr_in servaddr;原创 2015-07-05 12:12:38 · 528 阅读 · 0 评论 -
Unix网络编程相关函数
#include uint32_t htonl(uint32_t hostlong);uint16_t htons(uint16_t hostshort);uint32_t ntohl(uint32_t netlong);uint16_t ntohs(uint16_t netshort);#include #include #include int in原创 2015-07-05 12:40:15 · 433 阅读 · 0 评论 -
PF_INET
在写网络程序的时候,建立TCP socket: sock = socket(PF_INET, SOCK_STREAM, 0);然后在绑定本地地址或连接远程地址时需要初始化sockaddr_in结构,其中指定address family时一般设置为AF_INET,即使用IP。相关头文件中的定义:AF = Address Family PF转载 2015-07-25 00:09:12 · 1561 阅读 · 0 评论 -
socket绑定INADDR_ANY
其中INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。一 般情况下,如果你要建立网络服务器,则你要通知服务器操作系统:请在某地址 xxx.xxx.xxx.xxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发送给我。这个过程,你是通过bind()系统调用完成的。——也就是说,你的程序要绑定服务器的某地址,或者 说:把服转载 2015-07-24 22:41:10 · 611 阅读 · 0 评论