Skip to content

Commit a480346

Browse files
luluwu2032facebook-github-bot
authored andcommitted
Make initializeMessageQueueThreads() thread safe
Summary: **Context:** Issue: ```java.lang.IllegalStateException: Message queue threads already initialized at com.facebook.react.bridge.ReactContext.initializeMessageQueueThreads(ReactContext.java:100) ``` Possible root cause: 1, ReactContext.initializeMessageQueueThreads() can be called from different threads, so it's not thread safe 2, ReactContext.initializeMessageQueueThreads() is called again without detroying the threads. **Fix:** Make initializeMessageQueueThreads() thread safe. If this won't fix T93983690, I'll continue investigating with possible root cause 2. Changelog: [Android][Changed] - Make initializeMessageQueueThreads() thread safe Reviewed By: GijsWeterings Differential Revision: D29877386 fbshipit-source-id: 11b32c7184e9e8d6f882474fd607538df12276b7
1 parent 7929551 commit a480346

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java

+2-5
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,8 @@ public void initializeWithInstance(CatalystInstance catalystInstance) {
8989
initializeMessageQueueThreads(queueConfig);
9090
}
9191

92-
/**
93-
* Initialize message queue threads using a ReactQueueConfiguration. TODO (janzer) T43898341 Make
94-
* this package instead of public
95-
*/
96-
public void initializeMessageQueueThreads(ReactQueueConfiguration queueConfig) {
92+
/** Initialize message queue threads using a ReactQueueConfiguration. */
93+
public synchronized void initializeMessageQueueThreads(ReactQueueConfiguration queueConfig) {
9794
if (mUiMessageQueueThread != null
9895
|| mNativeModulesMessageQueueThread != null
9996
|| mJSMessageQueueThread != null) {

0 commit comments

Comments
 (0)