複数のスレッドのロックを管理する LockManager があります。スレッドが悪い子である場合があり、それらを強制終了し、LockManager にすべてのロックを解放するように依頼する必要があります。しかし、Java で ReentrantLock を使用しているため、これは不可能であり、別のスレッドが所有するロックを解除することはできません。
ロックを使用せざるを得ません (セマフォは使用できません。これは宿題です)。他のスレッドが所有するロックを解除できる Java Lock の実装はありますか?
これまでのところ、私が検討したオプションは次のとおりです。
- これを可能にする方法で ReentrantLock を再実装する
- セマフォとリエントラントロックの間である種のマッピングを行う
あなたが役に立つかもしれない追加の情報源: