- 10
- 0
- 约1.31千字
- 约 3页
- 2018-09-29 发布于河北
- 举报
车船问题 同步问题
车船问题
解法1:将二个桥作为一个
临界资源
程序描述
main( ) 车进程( ) 船进程( )
{ int mutex=1; {到B桥 {到A桥
∕* 互斥信号灯 *∕ P(mutex) P(mutex)
cobegin 过B桥 吊起A桥
while (还有车) 到A桥 吊起B桥
{ 车进程( ) }; 过A桥 过二桥
while (还有船) V(mutex) 放下B桥
{ 船进程( ) }; } 放下A桥
coend V(mutex)
} }
问题:效率太低
解法2:将每个桥作为一个临界资源,但车、船进程对桥的申请次序相同。
程序描述 :
main( )
{ int SB=1;
∕* B桥互斥信号灯
int SA=1;
∕* A桥互斥信号灯
cob
原创力文档

文档评论(0)