在ABAP中是如何释放内表的?

发布网友

我来回答

5个回答

热心网友

我怀疑是不是这个原因:用ABAP开发的报表只有在需要打印时才运行,而且打印完报表后就可以结束程序运行了,因此相应内表占有的内存也就得到了释放,但是当进行SAP功能增强时,有些程序需要一直运行,这样就必须释放掉不再使用的内表了。

热心网友

参考下,下面的链接!

我想,如果能想明白这个:
一个用户最多可以同时打开6个sessions.
每个session 都有各自的ABAP memory, 所以不同session之间是不能互访ABAP memory的。但是不同的session之间又有一个可以共访的内存,及SAP memory.

应该就能明白SAP一般都不会存在内存的问题,每个事务代码结束,内存调用就结束了。Debug的时候,你能看见一些,当前session在内存中的情况。

参考资料:http://www.erphome.net/wdb/wdbread.php?forumid=1&filename=f_9253

热心网友

在ABPA程序里面,有free命令,是用来专门释放内表的内存空间的。

热心网友

refresh itab.

或者你退出这个程序的话,内存自己会释放掉。根据我的经验。不过我是没学那么深。

热心网友

我把题目改为:在ABAP程序中不释放内表的话,是不是会浪费大量的内存?还是ABAP会采用和java相同的内存回收机制,定期检查不再使用的对象,定期释放?请各位大虾帮一下!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com