文档章节

进程间通讯的方式

旋转木马-千里马
 旋转木马-千里马
发布于 2015/12/29 17:11
字数 469
阅读 25
收藏 0

       管道( pipe ): 管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。

       有名管道 (named pipe) :有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。    

       信号量( semophore ) :信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。

       消息队列( message queue ) :消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。

       信号 ( sinal ) : 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。

       共享内存( shared memory ) :共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号两,配合使用,来实现进程间的同步和通信。

       套接字( socket ) : 套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同及其间的进程通信。

© 著作权归作者所有

旋转木马-千里马
粉丝 16
博文 83
码字总数 85714
作品 0
海淀
程序员
私信 提问
加载中

评论(0)

【linux下c语言服务器开发系列3】进程间通讯

上个博文说道,信号是在进程间通讯的的一种方式。例如子进程执行结束后,向父进程发送sigchld信号,父进程就通过捕获这个信号,就可以对子进程的资源进行回收,避免其成为僵尸进程。 进程间通...

shewa
2013/10/23
742
0
Android(IPC)进程间通讯1:详解Binder由来?

完整原文:http://tryenough.com/android-ipc1 Android开发的进程间通讯,整个Android的应用都依赖于binder做底层通信机制。而Linux中提供的进程间通讯方式并没有binder机制,那么android中为...

TryEnough
2019/02/22
0
0
进程、线程、协程基本概念理解

概述 最近接触一些进程、线程、协程、相关的东西,总是容易搞混淆,或者出错,专门想总结下这块的几个概念的问题! 进程 进程之间不共享任何状态 进程的调度由操作系统完成 每个进程都有自己...

rasine的杂货铺
2016/04/22
575
0
进程/线程概念和Android异步通讯机制

1、操作系统中线程、进程概念 进程是资源分配和调度的独立单位,进程将内存地址空间、程序、数据等资源组织起来,使操作系统容易管理这些资源。 线程是CPU调度和分派的基本单位,线程必须依赖...

JouTzaShin
2013/11/17
1.7K
0
Android Binder机制(一)

binder用于android进程间的通讯。客户端程序和系统服务,客户端进程之间,都是通过binder进行进程间通讯的。 1.客户端程序和系统服务 客户端和系统服务通讯的入口:cotext.getSystemService...

grasp_D
2017/04/03
20
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux日志分析

1. Linux日志文件的类型 2. 系统服务日志 2.1 syslogd的简介 2.2 syslogd的配置和使用 2.3 日志的安全性设置 2.4 远程日志记录服务 3. 日志的轮替 3.1 logrotate简介 3.2 logrotate的配置 3....

JiaMing
昨天
38
0
Raspberry Pi 安装系统

下载系统 https://www.raspberrypi.org/downloads/ 使用卡刷工具 启动时开启 ssh 在卡的 boot 根目录创建 ssh 这个空文件,启动后就打开了 ssh 服务 ➜ boot touch ssh ssh 连接 在路由器里...

郭大鹏
昨天
84
0
5、SpringBoot的Profile功能

1.1、功能介绍 配置文件默认使用application.properties、application-default.properties如果需要指定其他配置文件,可以在命令行参数中指定,spring.profiles.default=xxx 激活profilespr...

神锋
昨天
32
0
设计模式-单例

单例模式分为三种:1.饿汉模式,2.懒汉模式,3.登记模式 饿汉模式:在自己被加载时就将自己实例化,即便加载器是静态的 package singleton; public class EagerSingleton { ...

yiduwangkai
昨天
44
0
做个勤奋的小开发

从今天起,做一个勤奋的小开发 看书、编码,写博客 从今天起,关心框架和源码 任他技术变换,孜孜不倦,专研专研 从今天起,和每一个身边的人交流 告诉他们我的困惑 那艰苦得来的幸福结果 我...

源程序
昨天
36
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部