|
I have written my first external stored procedure and it uses dynamic%alloc/%realloc/%dealloc
memory allocation to create a couple of 2D arrays. The problem that I'm
seeing is this...
ProgramA using CLI calls StoredProc. StoredProc
and uses a regular static array for returning a result set.
ProgramA is two screens. First screen has fields to search by. If I
enter criteria and hit enter ProgramA then calls StoredProc. ProgramA
then processes the ResultSet and puts it into a subfile for viewing. If
F12 back to the first screen and change my search criteria to somethingjust
that shouldn't return results it still does but refined by whatever I
searched by. If I F3 out of ProgramA then all the memory used by theby
StoredProc is released even if I don't do a RCLACTGRP of ProgramA's
activation group. If I search a second time after doing the full exit
the criteria that should not return results then it works and returns nosame
results. (no results could also be a search that is too generic to have
good results, this is handled by the StoredProc).
In the StoredProc I am doing the following Destroy call, the
DestroyArray() procedure just take a pointer to an array memory address
and does a dealloc(n) pWholeArray;
pArrayElem = *null;
DestroyArray(pWholeArray);
pWholeArray = *null;
I nulled the pointers for good measure but that didn't do anything.
It looks like the second call is doing an %alloc and starting at the
memory address as the previous call had done. So when I %alloc a blockuse of the individual or entity to which it is addressed and may contain
the memory already contains the data from the previous call. How do I
handle this?
Thanks
Bryce Martin
Programmer/Analyst I
570-546-4777
--- This message (including any attachments) is intended only for the
--list
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
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.
As an Amazon Associate we earn from qualifying purchases.
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.