2012年(10)
分类:
2012-04-13 19:10:52
点击(此处)折叠或打开
点击(此处)折叠或打开
-main
点击(此处)折叠或打开
打印结果如下
点击(此处)折叠或打开
顺便想说的是,jdk引入条件变量后,在程序中就可以更精确的控制同步。
比如上面的例子改一下,顾客中存在优先级别,比如有vip和普通顾客,那么,要就vip优先得到车位。即对于普通顾客来说,得到车位的条件是 -有车位&vip已经得到车位-。
此时,我们需要有两个等待队列,这里不算object的锁队列。
对于一个普通顾客来说,可能他首先被加入到等待空闲车位的队列,当某时刻被唤醒后,可能又进入了等待vip的队列。
类似这种有优先级的问题,如果只使用信号量来实现,会很麻烦,有了条件变量,就方便多了,可以自定义需要的等待队列。
---------------------------------------------------
周一就开学了,这一周假期好快啊