本教程前面的步骤,我们花了 4 篇文章的篇幅,来系统阐述了 ABAP 程序运行时消耗内存的话题。
77. 简单聊聊 ABAP 变量消耗的内存空间这个话题
78. 浅谈 ABAP 程序运行时出现『内存耗尽』错误的问题
79. 使用 OPEN CURSOR 和 FETCH NEXT CURSOR 对 SAP 数据库表进行分块读写
80. 使用事务码 SAT 比较传统的 SELECT SQL 语句和 OPEN / FETCH CURSOR 分块读取 ABAP 数据库表两种方式的性能差异
我们之前提出了一个实际工作中遇到的场景,即如何从一张包含海量记录的数据库表里,取出当前登录系统的用户具有权限访问的数据集。
我们采用了传统的 SELECT OPEN SQL,以及 OPEN CURSOR / FETCH NEXT CURSOR 两种方式对数据库表进行读取操作。在前一步骤也就是本教程第 80 篇文章,我们介绍了使用事务码 SAT 度量两种不同实现方式的性能差异。
本文我们介绍如何使用 SAP ABAP 系统提供的另一个有用的工具,ABAP Memory Inspector,来度量应用程序在运行过程中的 ABAP 内存消耗情况。
ABAP Memory Inspector 的事务码是 S_MEMORY_INSPECTOR
, 在实际工作中笔者经常收到同事的咨询:为什么这个工具不能按照我期望的方式工作
?
本文就来详细介绍这个工具使用过程中的一些常犯的错误。