测试测试 | ✗ |
语言语言 | Obj-CObjective C |
许可证 | BSD |
发布上次发布 | 2016年5月 |
由Dave Lee,Grzegorz Pstrucha,Jeremie Marguerie维护。
依赖 | |
FBRetainCycleDetector | ~> 0.1 |
FBAllocationTracker | ~> 0.1 |
一个 iOS 库,它提供了开发工具来浏览内存中的对象,使用 FBAllocationTracker 和 FBRetainCycleDetector。
此库展示了 FBAllocationTracker
和 FBRetainCycleDetector
如何协同工作,以及如何在真实应用中使用它们。
它使用 FBAllocationTracker 来收集关于对象的信息。它支持 代数 和 保留周期检测。
这里有一个小示例(项目位于 Example 目录)
要开始使用 FBMemoryProfiler
,您首先需要启用 FBAllocationTracker
。
#import <FBAllocationTracker/FBAllocationTrackerManager.h>
int main(int argc, char * argv[]) {
[[FBAllocationTrackerManager sharedManager] startTrackingAllocations];
[[FBAllocationTrackerManager sharedManager] enableGenerations];
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
启用内存分析器
FBMemoryProfiler *memoryProfiler = [FBMemoryProfiler new];
[memoryProfiler enable];
当您在屏幕上点击 FBMemoryProfiler
按钮,它将显示为按钮。一旦点击,它将以全尺寸模式打开内存分析器。
我们还可以定义插件(请查看下面)和传递到配置中的保留周期检测器的过滤器。
_memoryProfiler = [[FBMemoryProfiler alloc] initWithPlugins:@[[IncredibleCacheCleaningPlugin new],
[AwesomeLoggerPlugin new]]
retainCycleDetectorConfiguration:someConfigurationWithCustomFilters;
[_memoryProfiler enable];
插件是符合 FBMemoryProfilerPluggable 协议的对象。示例用法:自定义缓存清理器 CacheCleanerPlugin.h,记录服务器数据的日志RetainCycleLoggerPlugin.h。
关于如何提供帮助,请参阅 CONTRIBUTING 文件。