一起talk C栗子吧(第八十三回:C语言实例--进程间通信概述)
程序员文章站
2022-06-22 12:02:31
各位看官们,大家好,前二回中咱们说的是进程停止的例子,这一回咱们说的例子是:进程间通信。闲话休提,言归正转。让我们一起talk c栗子吧!
看官们,每个进程都拥有自己的资源,如果不同进程之间需要...
各位看官们,大家好,前二回中咱们说的是进程停止的例子,这一回咱们说的例子是:进程间通信。闲话休提,言归正转。让我们一起talk c栗子吧!
看官们,每个进程都拥有自己的资源,如果不同进程之间需要共享资源,那么就需要在进程之间通信(英文中常用ipc表示进程间的通信)。我们举个实际的例子进行说明:
进程a的代码如下:
int main() { int a = 3; printf("%d \n",a); return 0; }
进程b的代码如下:
int main() { int b = 3; printf("%d \n",b); printf("%d \n",a); //如果进程b想使用进程a中的资源a,那么需要和进程a进行通信 return 0; }
从上面的代码中,大家可以看到,进程拥有自己的资源,可以随便使用自己的资源,但是如果想使用其它进程中的资源,需要就在进程之间进行通信。
关于进程之间的通信,有三个问题需要解决:
1.进程之间如何通信; 2.进程之间如何使用临界资源; 3.进程之间如何有序地执行某项任务;关于问题1,我们会在后面的章回中进行说明,这里不做详细的介绍。
关于问题2和问题3,我们在前面的章回中介绍进程互斥时提供了一种简单的互斥方法。我们在后面的章回中还会介绍其它的方法。这两个问题其实和平常所说的进程同步与互斥是相同的,能解决好进程同步与互斥的问题,就能解决好这两个问题。
看官们,进程之间的通信是进程知识体系中非常重要的一块,我们今天只是做一个概述,让大家对这些内容有一个整体上的把握,以便为进一步的学习打好基础。我们在后面的章回中会详细进程之间通信的各项内容。让我们一起期待吧,哈哈。
各位看官,关于进程间通信的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。
推荐阅读
-
一起talk C栗子吧(第一百八十四回:C语言实例--在printf函数中设置输出宽度三)
-
一起talk C栗子吧(第一百四十三回:C语言实例--文件操作:基于文件指针三)
-
一起talk C栗子吧(第一百三十九回:C语言实例--文件操作:基于文件描述符二)
-
一起talk C栗子吧(第一百三十八回:C语言实例--文件操作:基于文件描述符一)
-
一起talk C栗子吧(第一百六十回:C语言实例--套接字通信模型二)
-
一起talk C栗子吧(第七十九回:C语言实例--父进程与子进程)
-
一起talk C栗子吧(第八十一回:C语言实例--进程停止)
-
一起talk C栗子吧(第一百一十八回:C语言实例--线程死锁二)
-
一起talk C栗子吧(第一百七十五回:C语言实例--获取当前终端的行数和列数)
-
一起talk C栗子吧(第一百零一回:C语言实例--使用信号量进行进程间同步与互斥二)