补全:建等待边
补全 waitfor:线程想要的锁被别人占着,就连一条「等的人→被等的人」的边。
贯穿本节的等待图模型(判题机不靠时序,这是死锁的确定模型):holds={锁: 持有它的线程}、wants={线程: 想要的锁}。想要的锁被别人占着就连一条等待边。waitfor 交回等待边 {等的人: 被等的人},find_cycle 交回环上的线程(没环 []),deadlocked 判有没有死锁,blocked 数几个在等;victim 从环里挑一个当牺牲者、after_abort 中止它后还有没有环、cycle_len 环有多长。
全部评论