本文共 341 字,大约阅读时间需要 1 分钟。
本文介绍了域间套接字socketpair的概念,并用其实现了进程间的双向通信。
tips:全文阅读需3min
我们知道,进程通信中,pipe用来创建管道,但是单个管道只能单向通信,一端用于读,而另一端用于写。
如果要实现进程双向通信,必须创建一对管道。
而socketpair则可以用来创建双向通信的管道,实现进程间双向通信。
下面是该函数的函数体:
其中,sv[0]和sv[1]用于返回新套接字的描述符:
接下来通过代码看一下它是如何实现进程双向通信的:
Step1:调用函数创建socketpair
Step2: fork子进程,并利用read\write实现相应功能
Step3:不要忘记头文件
运行程序,实现了进程双向通信: