× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Couple of essential bits of information are missing. The heap belongs to the AG in which the program is running. Where the CL runs is irrelevant - does the RPG run as *CALLER - in which case it is in that AG, or in a named AG? Is it a batch run or interactive?

If batch the heap will get cleaned up when the job ends. If interactive then RCLACTGRP (or switching the program to run as *NEW) is the way to clear up the storage if the RPG runs in a named AG. If the RPG runs *CALLER it is running in the default and cannot be cleaned up until the job ends. In this latter case a final call to dealloc and set on LR would be the way to go.


On 2014-02-24, at 12:52 PM, Gary Thompson <gthompson@xxxxxxxxxxx> wrote:

Walter,
Just a guess, but since you mention CLLE, I think
you want to think about using RCLACTGRP in place
of RCLRSC - which is an OPM command.
RCLACTGRP should be used for ILE.

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Walter Bellisio
Sent: Monday, February 24, 2014 6:53 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: Dynamic Storage


I have a quick question concerning the release of heap storage that we use for dynamic sizing arrays. I understand that heap storage is released with the RPGLE dealloc command. We have a case where we load dynamic arrays in the *INZSR routine and leave LR off so the arrays are only loaded once since this program is called multiple times. The program is called in a CLLE stream running in the default activation group. When the RPGLE program finishes being called multiple times, will a RCLRSC command free up heap storage? I've read in multiple places where RCLRSC will free up static storage, but no mention is made of heap storage. I could call the RPGLE program one last time with a flag that would do the deAlloc, but if RCLRSC does it, then no need to do the last call.

--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.

--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com





As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.