mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-05 09:29:07 +08:00
Fix data race on read/write _instance variable in ModuleData class
Summary: Thanks for submitting a PR! Please read these instructions carefully: - [ ] Explain the **motivation** for making this change. - [ ] Provide a **test plan** demonstrating that the code is solid. - [ ] Match the **code formatting** of the rest of the codebase. - [ ] Target the `master` branch, NOT a "stable" branch. What existing problem does the pull request solve? XCode [Thread Sanitizer](https://clang.llvm.org/docs/ThreadSanitizer.html) find race condition while read/write `_instance` variable in RCTModuleData class. A bridge can check `hasInstance` method while instance writes. All tests passed on my device. These changes remove data race, you can turn it in scheme configuration  Closes https://github.com/facebook/react-native/pull/13757 Differential Revision: D4994041 Pulled By: javache fbshipit-source-id: 631cd59bbcbde193937d8baf8358ff6868717a2e
This commit is contained in:
committed by
Facebook Github Bot
parent
457616fe5f
commit
5e97be8b1c
@@ -214,6 +214,7 @@ RCT_NOT_IMPLEMENTED(- (instancetype)init);
|
||||
|
||||
- (BOOL)hasInstance
|
||||
{
|
||||
std::unique_lock<std::mutex> lock(_instanceLock);
|
||||
return _instance != nil;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user