bonus-material-app/nativeplugins/Mpaas-Scan/ios/mPaas.framework/Headers/MPaaS+MonitorStartUpTime.h

94 lines
2.8 KiB
C
Raw Normal View History

2024-12-20 09:23:59 +08:00
//
// MPaaS+MonitorStartUpTime.h
// APMPaaS
//
// Created by qiwei on 16/10/12.
// Copyright © 2016年 Alipay. All rights reserved.
//
#ifndef MPaaS_MonitorStartUpTime_h
#define MPaaS_MonitorStartUpTime_h
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
/**
使: 使
CFAbsoluteTimeGetCurrent()
使
*/
extern CFTimeInterval globalMonitorStartUpTime;
/**
使: 使
CACurrentMediaTime()
使
*/
extern CFTimeInterval globalRelativeStartUpTime;
/**
App启动的最早时刻
+load方法中设置
+load方法中
*/
extern void MPStartupTimeMarkAppStartPoint();
/**
main,didfinishlaunch,dbinit
app启动的最早时刻
*/
extern void MPStartupTimeMarkAppPhase(const char *phaseName);
/**
main,didfinishlaunch,dbinit
app启动的最早时刻
*/
extern void MPStartupTimeWithConfigMarkAppPhase(const char *phaseName);
/**
dbcost
*/
extern void MPStartupTimeSetRangeCost(const char *rangeName,CFTimeInterval cost);
/**
MPStartupRangeCostStart(dbinit);
//... db init code ...
MPStartupRangeCostFinish(dbinit);
*/
#define MPStartupTimeRangeCostStart(name)\
CFTimeInterval _mpstartuptimeRangeStart##name = CACurrentMediaTime();
#define MPStartupTimeRangeCostFinish(name)\
CFTimeInterval _mpstartuptimeRangeFinish##name = CACurrentMediaTime();\
MPStartupTimeSetRangeCost(#name,_mpstartuptimeRangeFinish##name - _mpstartuptimeRangeStart##name);
/**
Phase app启动的时间
Range
*/
typedef NS_ENUM(NSUInteger,MPStartupTimeDataType){
MPStartupTimeData_Phase,
MPStartupTimeData_Range,
};
/**
*/
extern void MPStartupTimeForEachData(void (^callback)(const char *name,CFTimeInterval value,MPStartupTimeDataType type));
#ifdef __cplusplus
}
#endif // __cplusplus
#endif /* MPaaS_MonitorStartUpTime_h */