Browse Source

player lock fix

lakebane
FatBoy-DOTC 1 day ago
parent
commit
89c06f714f
  1. 6
      src/engine/objects/PlayerCharacter.java

6
src/engine/objects/PlayerCharacter.java

@ -5039,9 +5039,11 @@ public class PlayerCharacter extends AbstractCharacter {
//if(!newSystem) //if(!newSystem)
// return; // return;
ReentrantReadWriteLock reentrantLock = (ReentrantReadWriteLock) updateLock;
if (((ReentrantReadWriteLock) this.updateLock).isWriteLockedByCurrentThread()) { // Check if the lock is currently held by another thread (either for reading or writing)
this.updateLock.writeLock().unlock(); if (reentrantLock.isWriteLocked() || reentrantLock.getReadLockCount() > 0) {
return; // Or throw an exception if needed
} }
if (this.updateLock.writeLock().tryLock()) { if (this.updateLock.writeLock().tryLock()) {

Loading…
Cancel
Save