UNIX环境C语言编程(13)-高级进程间通信
来源:互联网 发布:岂凡网络怎么样 编辑:程序博客网 时间:2024/05/16 14:02
1、Unix域的socket
•与Internet域的socket机制相比,Unix域的socket更有效:
•1、无需执行协议处理 2、无需计算校验和 3、无需产生顺序号 4、无需确认
•缺点是,只能在同一个主机上通信
•先看一下socketpair函数,创建一对连接的Unix域socket
•#include <sys/socket.h>
•int socketpair(int domain,int type, int protocol, intsockfd[2]);
•命名Unix域socket,以便非相关进程间通信,示例:
#include <stdio.h>#include <stdlib.h>#include <sys/socket.h>#include <sys/un.h>int main(void){ int fd, size; struct sockaddr_un un; un.sun_family = AF_UNIX; strcpy(un.sun_path, "foo.socket"); if( (fd = socket(AF_UNIX, SOCK_STREAM, 0)) < 0 ) { perror("socket"); exit(0); } size = (int)((long)(&((struct sockaddr_un *)0)->sun_path)); size += strlen(un.sun_path); if( bind(fd, (struct sockaddr *)&un, size) < 0 ) { perror("bind"); exit(0); } printf("UNIX domain socket bound\n"); exit(0);}
•剩余的操作与Internet域的socket机制类似,如:listen、accept…
2、传递文件描述符
•文件描述符在进程间传递是可行的
•发送进程与接收进程共享同一个file table项,类似fork之后父子进程间描述符的的关系
0 0
- UNIX环境C语言编程(13)-高级进程间通信
- unix环境高级编程-进程间通信
- UNIX环境C语言编程(12)-进程间通信
- 《UNIX环境高级编程》十七高级进程间通信读书笔记
- 《Unix环境高级编程》之 进程通信
- UNIX环境高级编程——进程间通信概念
- UNIX环境高级编程——进程间通信概念
- 《unix高级环境编程》进程间通信——信号量
- 《unix高级环境编程》进程间通信——信号量
- UNIX环境高级编程第十五章 进程间通信 总结
- unix环境高级编程-进程间通信(2)
- 《UNIX环境高级编程》十五进程间通信读书笔记
- unix环境高级编程--进程间通信机制
- 《UNIX环境高级编程》第15章 进程间通信
- 《unix高级环境编程》进程间通信——进程间通信概述
- 《unix高级环境编程》进程间通信——进程间通信概述
- UNIX环境高级编程笔记——高级IO,进程间通信,套接字,高级进程间通信
- 《unix高级环境编程》进程间通信—— UNIX 域套接字
- [JAVA加解密]对登陆密码及网络传输内容加密
- android 的ListView中,判断其已滚动到最顶部或者最底部?
- java在JFrame里 this.setIconImage((new ImageIcon("image\\qq.jpg")).getImage());
- UITapGestureRecognizer会屏蔽掉Button的点击事件
- Hbase 学习笔记(二): 高级模块
- UNIX环境C语言编程(13)-高级进程间通信
- 快速重建数据库(sqlserver)------可能很少情况下会用到
- 基于ARM Cortex A9核心Rayeager PX2开发板电路图
- T_SQL rowtype类型
- Hbase 学习笔记(三):管理模块
- JavaScript 事件绑定
- 关于字符集的问题
- 【联鼎案例】LanderCluster集群成功案例――“95598”电力客户服务系统
- python2跟3的区别