void reader(void)
{
while(1)
{
P(&mutex)
++readcnt;
if(readcnt == 1)
P(&W);
//读取临界区数据......
p(&mutex)
--readcnt;
if(readcnt == 0)
V(&W);
v(&mutex);
}
}
void writer(void)
{
while(1)
{
P(&w);
//写数据
V(&W);
}
}