public class FileLocker extends AbstractLocker
| 限定符和类型 | 类和说明 |
|---|---|
static class |
FileLocker.BucketLockMap
Because bucket lock map will be key of HashMap(lockHolder), however
ConcurrentHashMap overwrites
Object##hashCode() and Object##equals(Object), that leads to hash key conflict in lockHolder. |
| 限定符和类型 | 字段和说明 |
|---|---|
protected BranchSession |
branchSession
The Branch session.
|
LOCK_SPLIT, LOGGER| 构造器和说明 |
|---|
FileLocker(BranchSession branchSession)
Instantiates a new Memory locker.
|
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
acquireLock(List<RowLock> rowLocks) |
boolean |
acquireLock(List<RowLock> rowLocks,
boolean autoCommit,
boolean skipCheckLock) |
void |
cleanAllLocks() |
boolean |
isLockable(List<RowLock> rowLocks) |
boolean |
releaseLock(List<RowLock> rowLock) |
void |
updateLockStatus(String xid,
LockStatus lockStatus) |
convertToLockDO, convertToLockDO, getRowKey, releaseLock, releaseLockprotected BranchSession branchSession
public FileLocker(BranchSession branchSession)
branchSession - the branch sessionpublic boolean acquireLock(List<RowLock> rowLocks, boolean autoCommit, boolean skipCheckLock)
public void updateLockStatus(String xid, LockStatus lockStatus)
public void cleanAllLocks()
cleanAllLocks 在接口中 LockercleanAllLocks 在类中 AbstractLockerCopyright © 2022 Seata. All rights reserved.