进程间的通信---信号灯

信号灯,也叫信号量,它是不同进程间或一个给定进程内部不同线程间同步机制。

信号灯的使用一般配合共享内存使用,用以实现同步和互斥;

编写步骤:

1.使用ftok()函数获取key值;

2.使用semget()函数创建一个信号灯;(注:在这之前必须要把共享内存创建好,具体方法上篇博客有详细方法)

3.使用semctl()函数初始化信号量,(注:在这之前要先定义一个共用体,在Linux里可以通过man手册查)

4.使用semop()函数进行P,V操作;

5.删除信号灯集;


写端代码:

进程间的通信---信号灯进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯


读端代码:

进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯

进程间的通信---信号灯进程间的通信---信号灯