现在的位置: 首页 > 综合 > 正文

读写信号量

2018年02月07日 ⁄ 综合 ⁄ 共 456字 ⁄ 字号 评论关闭

1.读写信号量

信号量对所有的调用者执行互斥。但有时候,任务只需要读取受保护的数据,而其他的则必须做出修改。只读任务可以并行的完成,提高性能。任何写内核控制路径必须对被保护资源互斥访问.

2.linux内核中的读写信号量

一个resem可允许一个写入者或无限多个读取者拥有该信号量。写入者具有更高的优先级。

初始化

init_rwsem(struct rw_semaphore *sem);

只读

down_read(struct rw_semaphore *rem);

down_read_trylock(struct rw_semaphore *rem);

up_read(struct rw_semaphore *rem);

down_write(struct rw_semaphore *rem);

down_write_trylock(struct rw_semaphore *rem);

up_write(struct rw_semaphore *rem);

downgrade_write(struct rw_semaphore *rem);

抱歉!评论已关闭.