react-native-macos/ReactCommon
David Aurelio a1bfb284ee Use atomic list for event subscribers
Summary:
Replace the *copy on write* vector with an atomic pointer to a linked list.

This allows to publish without locking a mutex, at the cost of the slower traversal of a linked list (a vector has better locality).

At the moment, the typical use case is to have one subscriber, meaning that the afforementioned slower traversal is not a problem.

Adding subscribers is implemented as atomic *compare and swap.*

Reviewed By: SidharthGuglani

Differential Revision: D15546964

fbshipit-source-id: 41bfa41f1ac6be5c9b6bf4288ea3271ee995877e
2019-05-31 01:24:44 -07:00
..
better Fabric: Disabling custom ("better") containers in DEBUG mode 2019-03-20 09:24:59 -07:00
config xplat// -> fbsource//xplat/ for xplat/js 2019-02-14 23:53:32 -08:00
cxxreact Sync worker requirement mismatches 2019-05-26 01:39:01 -07:00
fabric Create structure of mapbuffer project 2019-05-28 17:29:38 -07:00
jscallinvoker Add `override` to BridgeJSCallInvoker 2019-05-14 12:11:05 -07:00
jsi Consistent reporting native module name on crash on native side (#24741) 2019-05-07 14:57:20 -07:00
jsiexecutor TM iOS: force flush message queue when calling into JS from native 2019-03-29 01:39:39 -07:00
jsinspector Split React.podspec into separate podspecs for each Xcode project (#23559) 2019-02-21 18:35:44 -08:00
microprofiler Upgrade mobile BUCK and .bzl files to use C++14 2019-03-16 02:25:33 -07:00
turbomodule Implement Android Cxx TurboModule support 2019-05-22 13:16:13 -07:00
utils Fabric: Collect typenames instead of typehashes to ensure safety in ContextContainer 2019-05-14 10:05:54 -07:00
yoga Use atomic list for event subscribers 2019-05-31 01:24:44 -07:00
React-Fabric.podspec Update rncore podspec to exclude codegen test files (#24513) 2019-04-18 09:30:51 -07:00