diff --git a/retrofit-mock/src/main/java/retrofit2/mock/BehaviorCall.java b/retrofit-mock/src/main/java/retrofit2/mock/BehaviorCall.java index 696b12a45ea7ed7789ceb55e9fc7beffa47ddcb2..e7c48cf22b618c3f20db82d0654a7fe43d3c80ea 100644 --- a/retrofit-mock/src/main/java/retrofit2/mock/BehaviorCall.java +++ b/retrofit-mock/src/main/java/retrofit2/mock/BehaviorCall.java @@ -20,6 +20,7 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; import java.util.concurrent.atomic.AtomicReference; +import javax.annotation.concurrent.GuardedBy; import okhttp3.Request; import retrofit2.Call; import retrofit2.Callback; @@ -34,7 +35,8 @@ final class BehaviorCall implements Call { private volatile Future task; volatile boolean canceled; - private volatile boolean executed; + @GuardedBy("this") + private boolean executed; BehaviorCall(NetworkBehavior behavior, ExecutorService backgroundExecutor, Call delegate) { this.behavior = behavior;