进程间通信2
来源:互联网 发布:象棋旋风软件价格 编辑:程序博客网 时间:2024/06/11 20:05
一目的:数据传输,资源共享,通知事件,进程控制
二.分类:管道和有名管道,信号,消息队列,共享内存,信号量,套接字
1.管道通信:管道是单向的,先进先出的,它把一个进程的输出和另一个进程的输入连接在一起,一个进程在管道的尾部写入数据,另一个进程从管道的头部读出数据。
注意事项:必须在系统调用fork()前调用pipe(),否则子进程将不会继承文件描述符。
2.信号通信:信号机制是unix系统中最为古老的进程间通信机制,很多条件可以产生同一信号:1.当用户按某些按键时,产生信号2.硬件异常产生信号3.用户用kill函数将信号发送给另一进程4.用户可以kill命令将信号发送给其他进程
信号处理的3种方式:1.忽略此信号2.执行用户希望的动作3.执行系统默认的动作
3.共享内存:是被多个进程共享的一部分物理内存,共享内存是进程间共享数据的一种最快的方法。一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。
实现共享内存的两个步骤:1.创建共享内存2.映射共享内存
4.消息队列:就是一个消息的链表,可以把消息看做一个记录,具有特定的格式,进程可以向中按照一定的规则添加新消息,另一个进程则可以从消息队列中读走消息。
5.信号量:主要用途是保护临界资源,进程可以根据它判定是否能够访问某些共享资源,除了用于访问控制外,还可以用于进程同步。
分类:二值信号灯,计数信号灯
- 进程间通信 [2]
- 进程间通信2
- 进程间通信2
- 进程间通信2
- 进程间通信2
- 进程&进程间通信
- 3.1.2 进程间通信
- 进程间通信-2-160919
- 进程间通信-信号量2
- 进程间通信方式2
- Linux进程间通信2
- Linux进程间通信2
- 进程间通信方式2
- 进程间通信(2)
- Linux 进程间通信2
- 信号通信(进程间通信)
- 进程间通信-管道通信
- 进程间通信--管道通信
- 图灵测试引发的思考——人工智能还是机器智能?
- Informatica PowerCenter Parameter file 中的参数影响范围 与 参数文件举例
- linux getpid 小结
- UIwebview显示网页内容
- Android中如何启动第三方程序?
- 进程间通信2
- servlet3.0 使用注解(一)
- Android OpenGL ES 开发教程(22):绘制一个球体
- 天轰穿结束了,结束了浮躁的生活
- view改为scrollview提示Debug Assertion Failed解决方法
- 【小知识积累】awk的print与printf输出浮点数
- windows中对环境变量操作实质上是对注册表的操作
- ExpandableListView和Tobhost的简单用法
- 动态链接库dll文件的使用