perf[orm]: updates entity are not verified for consistency

This commit is contained in:
godotg
2024-01-25 16:28:10 +08:00
parent 8fdc330f8d
commit cf569d8dc5
2 changed files with 15 additions and 3 deletions
+10 -3
View File
@@ -139,10 +139,7 @@ public class EntityCache<PK extends Comparable<PK>, E extends IEntity<PK>> imple
@Override
public void update(E entity) {
AssertionUtils.notNull(entity);
var currentPnode = cache.getIfPresent(entity.id());
if (currentPnode == null) {
currentPnode = new PNode<>(entity);
cache.put(entity.id(), currentPnode);
@@ -168,6 +165,16 @@ public class EntityCache<PK extends Comparable<PK>, E extends IEntity<PK>> imple
currentPnode.setModifiedTime(TimeUtils.now() + 100);
}
@Override
public void updateUnsafe(E entity) {
var currentPnode = cache.getIfPresent(entity.id());
if (currentPnode == null) {
currentPnode = new PNode<>(entity);
cache.put(entity.id(), currentPnode);
}
currentPnode.setModifiedTime(TimeUtils.now() + 100);
}
@Override
public void updateNow(E entity) {
update(entity);
@@ -32,6 +32,11 @@ public interface IEntityCache<PK extends Comparable<PK>, E extends IEntity<PK>>
*/
void update(E entity);
/**
* 同update(),不会校验更新的线程是否一致
*/
void updateUnsafe(E entity);
/**
* 更新缓存中的数据,立刻写入到数据库
*/