page contents

AQS 中为什么要有 cancelAcquire() 操作?

Pack 发布于 2019-12-30 15:45
阅读 1120
收藏 0

attachments-2019-12-cQavKdIQ5e09ab3bbdc9d.JPG

问题描述:据了解finally里面的代码是在return之前执行的,那 return 语句之前不是已经将局部变量 failed 设置为 false,请问什么情况下执行 cancelAcquire(node) 语句?想了半天没想通这个finally设置的意义在吗?求大神指点一下


64
Pack
Pack

你想想看,如果线程执行到failed = false 之前突然被打断,会发生什么?思考下

请先 登录 后评论