【发布时间】:2012-08-05 01:23:17
【问题描述】:
我想知道如何(更简单)在数据库驱动的应用程序中实现锁定(例如,在 c# 中,我指的是桌面应用程序或 Web 应用程序都连接到处理数据库操作的 WCF/Web 服务) .
我从这篇 wiki 文章 http://en.wikipedia.org/wiki/Lock_(computer_science) 了解到,我可以进行乐观锁定,即检查自上次读取后是否进行了更新并相应地抛出错误并要求用户重新读取数据并尝试再次更新。但是如果有更多的用户同时进行更新,缺点是可能会有很多更新试验和错误。
作为结论,我认为乐观锁定是一种选择。 是否有其他不复杂的实施方案? 我认为锁定和互斥锁是一种选择,但我想不出一种方法来实现“if”条件来查看哪个记录被阻止,这样就不会导致死锁。
【问题讨论】: