由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 谁能推荐一个read-writer lock的C++实现? (转载)
相关主题
mutex和semaphore的差别到底是什么?Help on a multithread question
Multi-thread可以mutex锁资源,Multi-process怎么锁资源?怎样判断什么情况下不会出现race condition
大家看过来Re: C++ Guys!!!!.NET 的环境下用C++,可是无法debug是怎么回事?
请问static variable init的问题?multithread program design pattern (C++)
multithread 的semaphore问题F# language
looking for c++ programmers有啥比较好的multithreaded C++ project?
Windows XP与Multithreading Programming有专门介绍multithreading编程的书吗
mutex一问DJGPP下怎样用pthread.h?
相关话题的讨论汇总
话题: mutexr话题: c++话题: writer话题: rw话题: nr
进入Programming版参与讨论
1 (共1页)
f**********y
发帖数: 230
1
【 以下文字转载自 JobHunting 讨论区 】
发信人: flyingbeauty (qualcommgirl), 信区: JobHunting
标 题: 谁能推荐一个read-writer lock的C++实现?
发信站: BBS 未名空间站 (Wed Mar 5 14:16:58 2008)
请问谁能推荐一个通过基本mutex来实现的read-writer lock?
最好是C++。
wiki上面的太简单了。Google了很久也没有答案。。。
f**********y
发帖数: 230
2
还有请问c++类库里面最常用的lock是哪个?

【在 f**********y 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: flyingbeauty (qualcommgirl), 信区: JobHunting
: 标 题: 谁能推荐一个read-writer lock的C++实现?
: 发信站: BBS 未名空间站 (Wed Mar 5 14:16:58 2008)
: 请问谁能推荐一个通过基本mutex来实现的read-writer lock?
: 最好是C++。
: wiki上面的太简单了。Google了很久也没有答案。。。

c*****t
发帖数: 1879
3
建议你买本
"Foundations of Multithreaded, Paralle, and Distributed Programming"
基本上这辈子不用再为这类问题发愁。基本所有的常见问题都有 C/java/pseudo
code 。抄一下就是了。
对于 reader / writer 的问题,最佳解法的 pseudo code 是
int nr = 0; // number of readers
semaphore rw = 1;
semaphore mutexR = 1;
reader ()
{
P (mutexR);
++nr;
if (nr == 1)
P (rw);
V (mutexR);
... critical section code
P (mutexR);
--nr;
if (nr == 0)
V (rw);
V (mutexR);
}
writer ()
{
P (rw);
... critical section code
V (rw);
}
如果没有 sema

【在 f**********y 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: flyingbeauty (qualcommgirl), 信区: JobHunting
: 标 题: 谁能推荐一个read-writer lock的C++实现?
: 发信站: BBS 未名空间站 (Wed Mar 5 14:16:58 2008)
: 请问谁能推荐一个通过基本mutex来实现的read-writer lock?
: 最好是C++。
: wiki上面的太简单了。Google了很久也没有答案。。。

f**********y
发帖数: 230
4
Thanks so much

【在 c*****t 的大作中提到】
: 建议你买本
: "Foundations of Multithreaded, Paralle, and Distributed Programming"
: 基本上这辈子不用再为这类问题发愁。基本所有的常见问题都有 C/java/pseudo
: code 。抄一下就是了。
: 对于 reader / writer 的问题,最佳解法的 pseudo code 是
: int nr = 0; // number of readers
: semaphore rw = 1;
: semaphore mutexR = 1;
: reader ()
: {

w****g
发帖数: 4
5

为什么初始是0呢?请指点~

【在 c*****t 的大作中提到】
: 建议你买本
: "Foundations of Multithreaded, Paralle, and Distributed Programming"
: 基本上这辈子不用再为这类问题发愁。基本所有的常见问题都有 C/java/pseudo
: code 。抄一下就是了。
: 对于 reader / writer 的问题,最佳解法的 pseudo code 是
: int nr = 0; // number of readers
: semaphore rw = 1;
: semaphore mutexR = 1;
: reader ()
: {

1 (共1页)
进入Programming版参与讨论
相关主题
DJGPP下怎样用pthread.h?multithread 的semaphore问题
CS 职业方向疑问looking for c++ programmers
想知道家在linux下都有什么c++ socket libraryWindows XP与Multithreading Programming
openMP or boost::thread (pthread) for multithreading ?mutex一问
mutex和semaphore的差别到底是什么?Help on a multithread question
Multi-thread可以mutex锁资源,Multi-process怎么锁资源?怎样判断什么情况下不会出现race condition
大家看过来Re: C++ Guys!!!!.NET 的环境下用C++,可是无法debug是怎么回事?
请问static variable init的问题?multithread program design pattern (C++)
相关话题的讨论汇总
话题: mutexr话题: c++话题: writer话题: rw话题: nr