Can someone give me an advise : what am I doing wrong here.

I have an interactive ILE/C program, below is a part of it:

#pragma map(additem, "H56HSR")
#pragma linkage(additem, OS)
void additem(char *) ;

int main(void)
....
additem("Y31ARR") ;
....
return(1) ;

I do not know, what exactly is inside H56HSR, it is a sort of dispatcher,
but I know, that it calls my program Y31ARR, that is in *LIBL and after
executing it, returns control back to the calling program.

Y31ARR is also ILE/C program written by me.

It also ends with return(0) statement.

It all works fine, but if I change something in Y31ARR and recompile it,
then the changes take effect only after I signoff and signon again.

My last achievment was impressive for me:
I issued a command RCLRSC (*CALLER) after my program completed. Then
recompiled Y31ARR and everything worked fine.

I am not very good in understanding, what's going on, but I have a "feeling"
that his object -Y31ARR - stays in memory, and when it is called again,
OS/400 actually routes a call to the memory instance, rather than create a
new instance from the disk version.

But the question is - what should I do to get rid of this situation?

Any advise will be highly appreciated,

Regards,
Jevgeni.





This thread ...

Follow-Ups:

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

This mailing list archive is Copyright 1997-2019 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].