扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国IT实验室 来源:中国IT实验室 2007年8月23日
关键字:
作为对比,下面是采用synchronized关键字的互斥锁方案:
该程序的输出如下:
01234567890123456789
可见两个线程确实互斥运行。
这个问题产生的原因是虽然在Mutex的定义中"private Semaphore s = new Semaphore(1)",也就是该信号量的初始permits是1,但是在此后每次调用release方法都会导致permits加一。如果能限制permits最大值1,最小值0,那就是真正的Mutex了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。