From d06758d092437a6972d42925f35812a5541642ff Mon Sep 17 00:00:00 2001 From: Graham Lea Date: Fri, 10 Apr 2020 11:22:49 +1000 Subject: [PATCH] Document thread safety --- moshi/src/main/java/com/squareup/moshi/JsonAdapter.java | 5 +++++ moshi/src/main/java/com/squareup/moshi/Moshi.java | 3 +++ 2 files changed, 8 insertions(+) diff --git a/moshi/src/main/java/com/squareup/moshi/JsonAdapter.java b/moshi/src/main/java/com/squareup/moshi/JsonAdapter.java index a35fc96..e71bd0f 100644 --- a/moshi/src/main/java/com/squareup/moshi/JsonAdapter.java +++ b/moshi/src/main/java/com/squareup/moshi/JsonAdapter.java @@ -30,6 +30,11 @@ import okio.BufferedSource; /** * Converts Java values to JSON, and JSON values to Java. + * + *

JsonAdapter instances provided by Moshi are thread-safe, meaning multiple threads can safely + * use a single instance concurrently. + * + *

Custom JsonAdapter implementations should be designed to be thread-safe. */ public abstract class JsonAdapter { @CheckReturnValue public abstract @Nullable T fromJson(JsonReader reader) throws IOException; diff --git a/moshi/src/main/java/com/squareup/moshi/Moshi.java b/moshi/src/main/java/com/squareup/moshi/Moshi.java index 8f8878f..f42d1d1 100644 --- a/moshi/src/main/java/com/squareup/moshi/Moshi.java +++ b/moshi/src/main/java/com/squareup/moshi/Moshi.java @@ -39,6 +39,9 @@ import static com.squareup.moshi.internal.Util.typeAnnotatedWithAnnotations; /** * Coordinates binding between JSON values and Java objects. + * + *

Moshi instances are thread-safe, meaning multiple threads can safely use a single instance + * concurrently. */ public final class Moshi { static final List BUILT_IN_FACTORIES = new ArrayList<>(5);