diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index c12d37d1121..ef197249db8 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -1675,6 +1675,7 @@ public class com/facebook/react/bridge/queue/ReactQueueConfigurationImpl : com/f } public class com/facebook/react/bridge/queue/ReactQueueConfigurationSpec { + public fun (Lcom/facebook/react/bridge/queue/MessageQueueThreadSpec;Lcom/facebook/react/bridge/queue/MessageQueueThreadSpec;)V public static fun builder ()Lcom/facebook/react/bridge/queue/ReactQueueConfigurationSpec$Builder; public static fun createDefault ()Lcom/facebook/react/bridge/queue/ReactQueueConfigurationSpec; public fun getJSQueueThreadSpec ()Lcom/facebook/react/bridge/queue/MessageQueueThreadSpec; diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.java index 169eb4e3ff5..643bffc71f7 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.java @@ -8,8 +8,6 @@ package com.facebook.react.bridge.queue; import android.os.Looper; -import com.facebook.react.common.MapBuilder; -import java.util.Map; public class ReactQueueConfigurationImpl implements ReactQueueConfiguration { @@ -56,24 +54,12 @@ public class ReactQueueConfigurationImpl implements ReactQueueConfiguration { public static ReactQueueConfigurationImpl create( ReactQueueConfigurationSpec spec, QueueThreadExceptionHandler exceptionHandler) { - Map specsToThreads = MapBuilder.newHashMap(); - - MessageQueueThreadSpec uiThreadSpec = MessageQueueThreadSpec.mainThreadSpec(); - MessageQueueThreadImpl uiThread = MessageQueueThreadImpl.create(uiThreadSpec, exceptionHandler); - specsToThreads.put(uiThreadSpec, uiThread); - - MessageQueueThreadImpl jsThread = specsToThreads.get(spec.getJSQueueThreadSpec()); - if (jsThread == null) { - jsThread = MessageQueueThreadImpl.create(spec.getJSQueueThreadSpec(), exceptionHandler); - } - + MessageQueueThreadImpl uiThread = + MessageQueueThreadImpl.create(MessageQueueThreadSpec.mainThreadSpec(), exceptionHandler); + MessageQueueThreadImpl jsThread = + MessageQueueThreadImpl.create(spec.getJSQueueThreadSpec(), exceptionHandler); MessageQueueThreadImpl nativeModulesThread = - specsToThreads.get(spec.getNativeModulesQueueThreadSpec()); - if (nativeModulesThread == null) { - nativeModulesThread = - MessageQueueThreadImpl.create(spec.getNativeModulesQueueThreadSpec(), exceptionHandler); - } - + MessageQueueThreadImpl.create(spec.getNativeModulesQueueThreadSpec(), exceptionHandler); return new ReactQueueConfigurationImpl(uiThread, nativeModulesThread, jsThread); } } diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java index 4b8bf51958c..ba7a3c089cf 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationSpec.java @@ -21,7 +21,7 @@ public class ReactQueueConfigurationSpec { private final MessageQueueThreadSpec mNativeModulesQueueThreadSpec; private final MessageQueueThreadSpec mJSQueueThreadSpec; - private ReactQueueConfigurationSpec( + public ReactQueueConfigurationSpec( MessageQueueThreadSpec nativeModulesQueueThreadSpec, MessageQueueThreadSpec jsQueueThreadSpec) { mNativeModulesQueueThreadSpec = nativeModulesQueueThreadSpec; @@ -41,11 +41,9 @@ public class ReactQueueConfigurationSpec { } public static ReactQueueConfigurationSpec createDefault() { - MessageQueueThreadSpec spec = MessageQueueThreadSpec.newBackgroundThreadSpec("native_modules"); - return builder() - .setJSQueueThreadSpec(MessageQueueThreadSpec.newBackgroundThreadSpec("js")) - .setNativeModulesQueueThreadSpec(spec) - .build(); + return new ReactQueueConfigurationSpec( + MessageQueueThreadSpec.newBackgroundThreadSpec("native_modules"), + MessageQueueThreadSpec.newBackgroundThreadSpec("js")); } public static class Builder { diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java index beb6bbcdab5..93981d23130 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java @@ -125,13 +125,10 @@ final class ReactInstance { * Prepare the ReactInstance by installing JSI bindings, initializing Fabric + TurboModules, and * loading the JS bundle. */ - MessageQueueThreadSpec nativeModulesSpec = - MessageQueueThreadSpec.newBackgroundThreadSpec("v_native"); ReactQueueConfigurationSpec spec = - ReactQueueConfigurationSpec.builder() - .setJSQueueThreadSpec(MessageQueueThreadSpec.newBackgroundThreadSpec("v_js")) - .setNativeModulesQueueThreadSpec(nativeModulesSpec) - .build(); + new ReactQueueConfigurationSpec( + MessageQueueThreadSpec.newBackgroundThreadSpec("v_native"), + MessageQueueThreadSpec.newBackgroundThreadSpec("v_js")); mQueueConfiguration = ReactQueueConfigurationImpl.create(spec, exceptionHandler); FLog.d(TAG, "Calling initializeMessageQueueThreads()"); mBridgelessReactContext.initializeMessageQueueThreads(mQueueConfiguration);