linux有没有多进程间的读写锁

发布网友 发布时间:2022-04-26 02:00

我来回答

3个回答

热心网友 时间:2022-06-19 19:58

Linux共享内存可以不用加锁,不过需要一种机制来标记共享内存的读写状态;也就是说要让两个进程知道:1)负责写入的进程,必须知道当前共享内存是否可以写入,上一次的写入内容是否有被负责读取的进程读走;2)负责读取的进程,必须知道当前共享内存是否需要读取,防止重复读取。一般的这种标记机制是通过以下方式来简单实现:1)通过读写锁来控制;2)共享内存上设置一个地方,专门存放当前共享内存的读写状态;

热心网友 时间:2022-06-19 19:58

pthread_rwlock, 可以设置属性为 PTHREAD_PROCESS_SHARED, 就是多进程读写锁

热心网友 时间:2022-06-19 19:59

首先初始化的锁为全局变量,为所有线程共享,你一个线程得到锁后自然而然就将其他线程阻塞了嘛,解锁后其他线程才能获取锁,理解哪个锁是一个阻塞性函数就ok,具体深挖掘的话就可以参照linux环境高级编程了!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com