多台机器上的进程之间的锁定机制

Mau*_*tro 6 c# nhibernate locking

我有一个带有NHibernate的C#应用​​程序,它必须通过SQL Server DB进行一些操作.

我们的目标是在同一台机器和其他机器上多次运行此应用程序.

实际应用程序在SQL表中插入一行,并检查具有最小日期的第一行是否具有正确的PID和机器名称的行,以便应用程序设置锁定并执行工作.

我们遇到此逻辑问题,因为如果保留锁定的应用程序崩溃,app还必须删除其他应用程序的锁定.

关于改变锁架构的任何提示?

问题是app可以在多台机器上运行.

Ami*_*shk 3

管理数据库中的锁怎么样?您可以拥有一个表/存储过程,每个正在运行的实例都会注册到该表/存储过程中,获取唯一的 ID,并使用存储过程进行锁定和释放。(与防止单个用户从多台计算机多次登录相同的技术)。