From 04c874bd9c6b15274fd87acf10cb3533b2eabc0d Mon Sep 17 00:00:00 2001 From: Valentin Shergin Date: Thu, 17 Sep 2020 08:55:20 -0700 Subject: [PATCH] Fabric: Using `thread_local` keyword instead on own implementation in TransactionTelemetry Summary: Apparently, there is C++ keyword for this. Changelog: [Internal] Fabric-specific internal change. Reviewed By: sammy-SC Differential Revision: D23754284 fbshipit-source-id: 5f9bbcc72d9c586173624869d614f12d2319fb7b --- .../react/renderer/mounting/TransactionTelemetry.cpp | 8 ++++---- .../react/renderer/mounting/TransactionTelemetry.h | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp b/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp index f1ac3f659fe..d81ed7c6bf4 100644 --- a/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp +++ b/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp @@ -12,18 +12,18 @@ namespace facebook { namespace react { -using ThreadLocalTransactionTelemetry = ThreadStorage; +thread_local TransactionTelemetry *threadLocalTransactionTelemetry = nullptr; TransactionTelemetry *TransactionTelemetry::threadLocalTelemetry() { - return ThreadLocalTransactionTelemetry::getInstance().get().value_or(nullptr); + return threadLocalTransactionTelemetry; } void TransactionTelemetry::setAsThreadLocal() { - ThreadLocalTransactionTelemetry::getInstance().set(this); + threadLocalTransactionTelemetry = this; } void TransactionTelemetry::unsetAsThreadLocal() { - ThreadLocalTransactionTelemetry::getInstance().set(nullptr); + threadLocalTransactionTelemetry = nullptr; } void TransactionTelemetry::willCommit() { diff --git a/ReactCommon/react/renderer/mounting/TransactionTelemetry.h b/ReactCommon/react/renderer/mounting/TransactionTelemetry.h index b71e10bae33..88ef2a23b0e 100644 --- a/ReactCommon/react/renderer/mounting/TransactionTelemetry.h +++ b/ReactCommon/react/renderer/mounting/TransactionTelemetry.h @@ -11,7 +11,6 @@ #include #include -#include namespace facebook { namespace react {