如何避免锁

今天早上复习了一下锁的知识,简单的留下几点总结:

一. 如何避免锁
1. 可以在修改资源的时候一下子获得所有需要修改的资源的锁,以后不再能获得其它的锁,直到本次修改完成。
2. 可以按某种顺序依次获得资源的锁。

二. 如果已经产生了锁的解决办法
1. 通过检查机制找出锁,然后牺牲掉那个进程。
2. 通过设置超时机制,自动杀掉持锁时间超时的进程,这个做法可能会误杀好人。

在实际应用中,一般可以使用保守的做法,即修改资源时一下子获得所有需要修改的资源的锁,然后再配上超时机制,确保万无一失。

你可能感兴趣的:(技术积累)