try-lock + 失败就释放,打破的是四条件里的【0】。
try-lock
trylock 模型:try_round(want, held_by, me)——想要的锁被别人占着就「放弃重试」(连自己的一起松手),否则「拿到」;acquire_all(want, held_by, me)——一次要拿全 want,有一把被占就全放弃回「重试」、都空回「成功」。松手重试打破「持有并等待」。
try_round(want, held_by, me)
acquire_all(want, held_by, me)
want
全部评论