信号灯,也叫信号量,它是不同进程间或一个给定进程内部不同线程间同步机制。
信号灯的使用一般配合共享内存使用,用以实现同步和互斥;
编写步骤:
1.使用ftok()函数获取key值;
2.使用semget()函数创建一个信号灯;(注:在这之前必须要把共享内存创建好,具体方法上篇博客有详细方法)
3.使用semctl()函数初始化信号量,(注:在这之前要先定义一个共用体,在Linux里可以通过man手册查)
4.使用semop()函数进行P,V操作;
5.删除信号灯集;
信号灯,也叫信号量,它是不同进程间或一个给定进程内部不同线程间同步机制。
信号灯的使用一般配合共享内存使用,用以实现同步和互斥;
编写步骤:
1.使用ftok()函数获取key值;
2.使用semget()函数创建一个信号灯;(注:在这之前必须要把共享内存创建好,具体方法上篇博客有详细方法)
3.使用semctl()函数初始化信号量,(注:在这之前要先定义一个共用体,在Linux里可以通过man手册查)
4.使用semop()函数进行P,V操作;
5.删除信号灯集;