.NET:再谈在线悲观锁、离线悲观锁、在线乐观锁和离线乐观锁。
在线:读取和修改在一个线程中。离线:读取和修改不在一个线程中。
在线悲观锁
概念:A和B依次读取了数据,先读取的执行修改会成功,后读取的执行修改回失败。
思路:事务隔离级别或数据库锁。
离线悲观锁
概念:A打开了编辑界面,B就不能打开编辑界面了。
思路:自己实现锁。
在线乐观锁
概念:A和B依次读取了数据,先执行修改的会成功,后执行修改的会失败。
思路:版本字段。
离线乐观锁
概念:A和B依次打开了编辑界面,先执行修改的会成功,后执行修改的会失败。
思路:版本字段。
备注
针对乐观锁和悲观锁,后面我会详细写文章。