版本记录
版本号 | 时间 |
---|---|
V1.0 | 2018.06.16 |
前言
我们在做app的时候,不是做完功能就结束了,很多时候是需要进行检查和优化的,而xcode自带了一个很好的检查工具,可以检测内存泄漏。还可以查看哪一个方法比较耗时。还可以检测离屏渲染等等,随后的几篇我们就说一下这个工具的使用。感兴趣的可以看这几篇。
1.INSTRUMENTS调试工具的使用(一)
2.INSTRUMENTS调试工具的使用(二)
3.INSTRUMENTS调试工具的使用(三)
4.INSTRUMENTS调试工具的使用(四)
5.INSTRUMENTS调试工具的使用(五)
6.INSTRUMENTS调试工具的使用(六)
7.INSTRUMENTS调试工具的使用(七)
8.INSTRUMENTS调试工具的使用(八)
9.INSTRUMENTS调试工具的使用(九)
10. INSTRUMENTS调试工具的使用(十)
11. INSTRUMENTS调试工具的使用(十一) —— 简介(一)
12. INSTRUMENTS调试工具的使用(十二) —— 通常任务之启动Instruments(一)
13. INSTRUMENTS调试工具的使用(十三) —— 通常任务之简单了解Instruments(二)
14. INSTRUMENTS调试工具的使用(十四) —— 通常任务之创建、保存和打开跟踪文档(三)
15. INSTRUMENTS调试工具的使用(十五) —— 通常任务之指定目标应用和设备(四)
16. INSTRUMENTS调试工具的使用(十六) —— 通常任务之访问和使用个别仪器(五)
17. INSTRUMENTS调试工具的使用(十七) —— 通常任务之记录、暂停和停止跟踪(六)
18. INSTRUMENTS调试工具的使用(十八) —— 导航收集的数据之关于数据分析(一)
19. INSTRUMENTS调试工具的使用(十九) —— 导航收集的数据之导航时间轴窗格(二)
20. INSTRUMENTS调试工具的使用(二十) —— 导航收集的数据之导航详细面板(三)
21. INSTRUMENTS调试工具的使用(二十一) —— 导航收集的数据之将数据映射到源代码(四)
22. INSTRUMENTS调试工具的使用(二十二) —— 导航收集的数据之查看您应用的源代码(五)
23. INSTRUMENTS调试工具的使用(二十三) —— 分析你App的性能之测量CPU使用情况(一)
24. INSTRUMENTS调试工具的使用(二十四) —— 分析你App的性能之测量图形性能(二)
25. INSTRUMENTS调试工具的使用(二十五) —— 分析你App的性能之监视网络和文件I / O(三)
26. INSTRUMENTS调试工具的使用(二十六) —— 分析你App的内存使用之关于内存分析(一)
27. INSTRUMENTS调试工具的使用(二十七) —— 分析你App的内存使用之检测内存使用(二)
28. INSTRUMENTS调试工具的使用(二十八) —— 分析你App的内存使用之找到废弃的内存(三)
29. INSTRUMENTS调试工具的使用(二十九) —— 分析你App的内存使用之找到内存泄露(四)
30. INSTRUMENTS调试工具的使用(三十) —— 分析你App的内存使用之找到僵尸对象(五)
31. INSTRUMENTS调试工具的使用(三十一) —— 分析你App的能源之测量能源影响(一)
32. INSTRUMENTS调试工具的使用(三十二) —— 高级任务之导出和导入跟踪数据(一)
33. INSTRUMENTS调试工具的使用(三十三) —— 高级任务之创建自定义Instruments(二)
34. INSTRUMENTS调试工具的使用(三十四) —— 分析模板和工具之分析模板(一)
Activity Monitor Instrument - 活动监视器工具
1. Overview
工具描述 | 支持平台 | 相关分析模板 |
---|---|---|
活动监视器仪器捕获有关系统负载与虚拟内存大小相关的信息。 它可以记录单个进程或系统上运行的所有进程的信息。 | iOS、OS X | Activity Monitor Profiling Template |
Timeline Pane - 时间线面板
时间轴窗格根据仪器的配置显示以下列表中显示的信息。 TotalVMSize
,CPUTotalLoad
,CPUUserLoad
和CPUSystemLoad
默认显示。 在检查器窗格的记录设置区域中启用其他统计信息。
Statistic name | Definition |
---|---|
SampleNumber |
进行采样的数目 |
TotalThreads |
线程总数 |
PhysicalMemoryWired |
操作系统使用的内存数 |
PhysicalMemoryActive |
当前进程使用的内存数 |
PhysicalMemoryInactive |
最近释放的内存数 |
PhysicalMemoryUsed |
在采样时使用的内存数 |
PhysicalMemoryFree |
可以使用的内存数 |
TotalVMSize |
虚拟内存的大小 |
VMPageInBytes |
调用到RAM的内存 |
VmPageOutBytes |
送到硬盘驱动的内存量 |
VMSwapUsed |
从硬盘驱动调用的内存 |
NetPacketsIn |
接收的网络包的数量 |
NetBytesIn |
接收的网络字节数量 |
NetPacketsOut |
发送网络包数量 |
NetBytesOut |
每秒发送的字节数 |
NetPacketsInPerSecond |
每秒接收的包数 |
NetPacketsOutPerSecond |
每秒发送的包数 |
NetBytesInPerSecond |
每秒接收的字节数 |
NetBytesOutPerSecond |
每秒发送的字节数 |
DiskReadOps |
硬盘读操作总数 |
DiskBytesRead |
字节读取数 |
DiskWriteOps |
磁盘写操作总数 |
DiskBytesWritten |
每秒写的字节数 |
DiskReadOpsPerSecond |
每秒的读操作数 |
DiskWriteOpsPerSecond |
每秒写操作数量 |
DiskBytesReadPerSecond |
每秒读的字节数量 |
DiskBytesWrittenPerSecond |
每秒写的字节数 |
CPUTotalLoad |
采样期间设备上加载的百分比 |
CPUUserLoad |
采样期间用户加载的百分比 |
CPUSystemLoad |
采样期间操作系统加载的百分比 |
CPUNiceLoad |
由优先级与正常优先级不同的进程导致的负载百分比 |
Record Settings - 记录设置
单击检查器窗格中的录制设置按钮以自定义以下录制选项。
1. Sampling Rate - 采样率
设置仪器记录信息的频率。 该滑块允许以1/10秒的增量从1/10秒到1秒进行采样。 文本字段允许其他1/10增量。 默认值是1/10秒。
2. System Statistics - 系统统计
选择一个统计数据以在轨道窗格中查看它。 单击形状或颜色以更改统计数据的表示方式。
3. Select statistics to list - 选择统计列表
选择您希望显示在系统统计信息设置区域的统计信息,其中可以在跟踪窗格中启用或禁用其可见性。
Display Settings - 显示设置
单击检查器窗格中的显示设置按钮以自定义以下显示设置。
1. Track Display Settings - 跟踪显示设置
这些设置控制信息在时间线窗格中的显示方式。
Setting | Description | Options |
---|---|---|
Style |
信息是如何展示的 | 1)块图:信息以水平线显示,直到信息发生变化。 该行下方的区域由统计信息的指定颜色填充。2)峰图:显示信息的最大值。 线条是统计的指定颜色。 |
2. Process Detail Tracking - 进程详细跟踪
选择是否在细节窗格中显示最新值,还是根据轨道窗格中检查头的位置显示值。 选项包括默认的Track inspection head
和Display latest
。
3. Process Life Span Filtering - 进程声明周期寿命过滤
选择是否显示所有进程的值,还是仅显示已创建且仍在运行的值。 选项包括默认的Created & still living
,以及All processes
。
4. Parent Child Outline - 父子大纲
选择是否将展开的详细信息窗格中父节点大纲的节点保留。 默认是不保留节点扩展。
Detail Pane Columns - 详细信息窗格列
1. Summary Detail Type - 摘要详细类型
详细信息窗格中提供以下摘要列。
Column name | Definition |
---|---|
Process ID |
进程标识符 |
Process Name |
进程名 |
User Name |
用户调用进程名 |
% CPU |
进程的CPU使用率 |
Threads |
进程使用的线程 |
Real Mem |
进程使用实际内存量 |
Virtual Mem |
进程使用虚拟内存量 |
Architecture |
设备架构 |
CPU Time |
进程使用的总的CPU时间 |
Sudden Term |
进程是否突然终止 |
2. Parent Child Detail Type - 父子详细类型
以下父子列在详细信息窗格中可用。
Column name | Definition |
---|---|
Process ID |
进程标识符 |
Process Name |
进程名 |
User Name |
用户调用进程名 |
% CPU |
进程的CPU使用率 |
Threads |
进程使用的线程 |
Real Mem |
进程使用实际内存量 |
Virtual Mem |
进程使用虚拟内存量 |
Architecture |
设备架构 |
CPU Time |
进程使用的总的CPU时间 |
Sudden Term |
进程是否突然终止 |
3. Samples Detail Type - 采样详细类型
下面采样列在详细窗口中列出来。
Column name | Definition |
---|---|
# | 进行采样的数量 |
Total Threads |
采样期间活动线程的总数 |
Physical Memory Wired |
操作系统使用内存量 |
Physical Memory Active |
当前进程使用的内存量 |
Physical Memory Inactive |
最近释放的内存量 |
Physical Memory Used |
采样期间使用的内存量 |
Physical Memory Free |
可以使用的内存量 |
VM Size |
虚拟内存大小 |
Page Ins |
调用RAM的内存量 |
Page Outs |
发送到硬盘驱动的内存量 |
Swap Used |
硬盘驱动的内存量 |
Net Packets In |
接收的网络包数 |
Net Bytes In |
接收的字节数 |
Net Packets Out |
发送的网络包数 |
Net Bytes Out |
发送的网络字节数 |
Net Packets In Per Second |
每秒接收的包数 |
Net Packets Out Per Second |
每秒发送的包数 |
Net Bytes In Per Second |
每秒接收的字节数 |
Net Bytes Out Per Second |
每秒发送的字节数 |
Disk Read Ops |
磁盘读操作数 |
Disk Bytes Read |
读取的字节数 |
Disk Write Ops |
磁盘写操作数 |
Disk Bytes Written |
写字节数 |
Disk Read Ops Per Second |
每秒磁盘读操作数 |
Disk Write Ops Per Second |
每秒磁盘写操作数 |
Disk Bytes Read Per Second |
每秒读字节数 |
Disk Bytes Written Per Second |
每秒写字节数 |
% Total Load |
采样时设备加载的百分比数 |
% User Load |
采样时用户使用的百分比数 |
% System Load |
操作系统引起的百分比数 |
% Nice Load |
由优先级与正常优先级不同的进程导致的负载百分比 |
后记
本篇主要讲述了
Activity Monitor
工具,感兴趣的给个赞或者关注~~~~