原文内容来自免费考研论坛,请点击查看全文
http://bbs.freekaoyan.com/viewthread.php?tid=325902
semaphore mutex , wmutex ; // mutex是用于保护计数器的信号量 wmutex 是用于互斥
mutex=1
int readcount=0 ;
process reader ( ) {
p ( mutex) ;
readcount= ;
if (readcount==1) p (wmutex) ;
{读文件};
v (mutex);
readcount--;
if (readcount==0) v(wmutex);
}
各位朋友,这么写对不对?
---------------------------------
能不能这么写?如果不能
哪位朋友能给我说明白?
---------------------------------
我觉得不太对
semaphore mutex , wmutex ; // mutex是用于保护计数器的信号量 wmutex 是用于互斥
mutex=1;
wmutex;//一开始应该是可写的
int readcount=0 ;
process reader ( ) {
p ( mutex) ;
readcount= ;
if (readcount==1) p (wmutex) ;
v (mutex); // 允许其他人读
{读文件};
p (mutex);
readcount--;
if (readcount==0) v(wmutex);
v (mutex);
}
---------------------------------
wmutex=1
读者写者问题
gsj5555 免费考研论坛/2008-10-15
相关话题/
领限时大额优惠券,享本站正版考研考试资料!
优惠券领取后72小时内有效,10万种最新考研考试考证类电子打印资料任你选。涵盖全国500余所院校考研专业课、200多种职业资格考试、1100多种经典教材,产品类型包含电子书、题库、全套资料以及视频,无论您是考研复习、考证刷题,还是考前冲刺等,不同类型的产品可满足您学习上的不同需求。 ...考试优惠券 本站小编 Free壹佰分学习网 2022-09-19
Free考研考试FreeKaoYan.Com
欢迎来到Free考研考试,"为实现人生的Free而奋斗"
© 2020 FreeKaoYan! . All rights reserved.