当前位置:嗨网首页>书籍在线阅读

09-结果分析

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

结果分析

按照如上规则可以避免死锁。例如,在之前的例子中,把 operation2() 修改为先获取 lock1 再获取 lock2 。这样, operation1()operation2() 在同时执行各自的第一条语句时,会有一个因等待 lock1 而被阻塞,而另一个在获取到 lock1 之后,也将获取到 lock2 ,它可以继续执行。执行完之后释放锁,被阻塞的线程随之获取 lock1lock2 ,然后进行后续的操作。