From ec6780b49c054ab34a25aca2b99cca52787ac6d4 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Fri, 26 Aug 2016 19:58:09 +0300 Subject: [PATCH] Use AtomicLong for modification stamp --- .../src/org/jetbrains/kotlin/psi/KtDeclarationStub.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtDeclarationStub.java b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtDeclarationStub.java index 6acec30d965..1c68c04ef8e 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtDeclarationStub.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtDeclarationStub.java @@ -27,8 +27,10 @@ import org.jetbrains.kotlin.kdoc.psi.api.KDoc; import org.jetbrains.kotlin.psi.findDocComment.FindDocCommentKt; import org.jetbrains.kotlin.psi.stubs.KotlinClassOrObjectStub; +import java.util.concurrent.atomic.AtomicLong; + public abstract class KtDeclarationStub> extends KtModifierListOwnerStub implements KtDeclaration { - private long modificationStamp = 0; + private final AtomicLong modificationStamp = new AtomicLong(); public KtDeclarationStub(@NotNull T stub, @NotNull IStubElementType nodeType) { super(stub, nodeType); @@ -41,11 +43,11 @@ public abstract class KtDeclarationStub> extends KtModi @Override public void subtreeChanged() { super.subtreeChanged(); - modificationStamp++; + modificationStamp.getAndIncrement(); } public long getModificationStamp() { - return modificationStamp; + return modificationStamp.get(); } @Nullable