问题:我正在准备将单实例应用程序变为多实例。有许多Lock
用法(来自java.util.concurrent.locks
包)用于同步对某些资源(其他服务器上的外部文件)的访问。现在,用于同步ReentrantLock
的{{1}}实现。
要在实例之间共享锁,我想使用已经通过JDBC连接的PostgreSQL数据库表。由于所有使用者仅使用Lock
接口(而不直接使用Lock
类),因此我想根据数据库表将ReentrantLock
实现替换为Lock
。
基于数据库表实现Lock
的正确方法是什么?还是存在基于JDBC的任何标准Lock
实现?
更新:
我不是在寻找表锁定机制(就像在Table lock in PostgreSQL问题中那样),我需要java.util.concurrent.locks.Lock
实现才能在代码中而不是在SQL中使用它。