mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-24 12:25:59 +08:00
[ReactNative] Add PerformanceLogger to measure TTI
Summary: @public Add PerformanceLogger to keep track of JS download, initial script execution and full TTI. Test Plan: The Native side currently calls `addTimespans` when it's finish initializing with the six values (start and end for the three events), so I just checked it with a `PerformanceLogger.logTimespans()` at the end of the function. ``` 2015-06-18 16:47:19.096 [info][tid:com.facebook.React.JavaScript] "ScriptDownload: 48ms" 2015-06-18 16:47:19.096 [info][tid:com.facebook.React.JavaScript] "ScriptExecution: 106ms" 2015-06-18 16:47:19.096 [info][tid:com.facebook.React.JavaScript] "TTI: 293ms" ```
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#import "RCTEventDispatcher.h"
|
||||
#import "RCTKeyCommands.h"
|
||||
#import "RCTLog.h"
|
||||
#import "RCTPerformanceLogger.h"
|
||||
#import "RCTSourceCode.h"
|
||||
#import "RCTTouchHandler.h"
|
||||
#import "RCTUIManager.h"
|
||||
@@ -247,6 +248,7 @@ RCT_NOT_IMPLEMENTED(-initWithCoder:(NSCoder *)aDecoder)
|
||||
- (void)insertReactSubview:(id<RCTViewNodeProtocol>)subview atIndex:(NSInteger)atIndex
|
||||
{
|
||||
[super insertReactSubview:subview atIndex:atIndex];
|
||||
RCTPerformanceLoggerEnd(RCTPLTTI);
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
if (!_contentHasAppeared) {
|
||||
_contentHasAppeared = YES;
|
||||
|
||||
Reference in New Issue
Block a user