From 737e011f96e9582d9a19cee43e721324a9131eb4 Mon Sep 17 00:00:00 2001 From: Alexey Lang Date: Fri, 2 Oct 2015 09:53:00 -0700 Subject: [PATCH] log native modules init time and config inject time separately Reviewed By: @tadeuzagallo, @jspahrsummers Differential Revision: D2502620 --- React/Base/RCTBatchedBridge.m | 4 +++- React/Base/RCTPerformanceLogger.h | 1 + React/Base/RCTPerformanceLogger.m | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/React/Base/RCTBatchedBridge.m b/React/Base/RCTBatchedBridge.m index 3559b58c3..05a803f6f 100644 --- a/React/Base/RCTBatchedBridge.m +++ b/React/Base/RCTBatchedBridge.m @@ -156,8 +156,9 @@ RCT_EXTERN NSArray *RCTGetModuleClasses(void); // We're not waiting for this complete to leave the dispatch group, since // injectJSONConfiguration and executeSourceCode will schedule operations on the // same queue anyway. + RCTPerformanceLoggerStart(RCTPLNativeModuleInjectConfig); [weakSelf injectJSONConfiguration:config onComplete:^(NSError *error) { - RCTPerformanceLoggerEnd(RCTPLNativeModuleInit); + RCTPerformanceLoggerEnd(RCTPLNativeModuleInjectConfig); if (error) { dispatch_async(dispatch_get_main_queue(), ^{ [weakSelf stopLoadingWithError:error]; @@ -295,6 +296,7 @@ RCT_EXTERN NSArray *RCTGetModuleClasses(void); [[NSNotificationCenter defaultCenter] postNotificationName:RCTDidCreateNativeModules object:self]; + RCTPerformanceLoggerEnd(RCTPLNativeModuleInit); } - (void)setupExecutor diff --git a/React/Base/RCTPerformanceLogger.h b/React/Base/RCTPerformanceLogger.h index 66d3dd863..8285f0615 100644 --- a/React/Base/RCTPerformanceLogger.h +++ b/React/Base/RCTPerformanceLogger.h @@ -15,6 +15,7 @@ typedef NS_ENUM(NSUInteger, RCTPLTag) { RCTPLScriptDownload = 0, RCTPLScriptExecution, RCTPLNativeModuleInit, + RCTPLNativeModuleInjectConfig, RCTPLTTI, RCTPLSize }; diff --git a/React/Base/RCTPerformanceLogger.m b/React/Base/RCTPerformanceLogger.m index 87e643355..443976a9a 100644 --- a/React/Base/RCTPerformanceLogger.m +++ b/React/Base/RCTPerformanceLogger.m @@ -33,6 +33,8 @@ NSArray *RCTPerformanceLoggerOutput(void) @(RCTPLData[RCTPLScriptExecution][1]), @(RCTPLData[RCTPLNativeModuleInit][0]), @(RCTPLData[RCTPLNativeModuleInit][1]), + @(RCTPLData[RCTPLNativeModuleInjectConfig][0]), + @(RCTPLData[RCTPLNativeModuleInjectConfig][1]), @(RCTPLData[RCTPLTTI][0]), @(RCTPLData[RCTPLTTI][1]), ]; @@ -74,6 +76,7 @@ RCT_EXPORT_MODULE() @"ScriptDownload", @"ScriptExecution", @"NativeModuleInit", + @"NativeModuleInjectConfig", @"TTI", ], ]];