× 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.



Looking forward to the reply to that question, Adam, thanks! But it's winter and late downunder so we might have to wait until tomorrow.

I have been having some fun experimenting while creating a new module recently. I made it into a SRVPGM and then to test, bound it to an RPG. At the same time, I experimented with activation groups and got the test program to run in its own group that was deleted at the end of the program.

Interesting, watching my colleagues continuing to have to recompile each time they changed the module being tested, or having to do sign off when the test program didn't let go of a file ! No more of that for me!

But now I am convinced that SRVPGMs are the way to go, changing all those programs doesn't seem to be an easy task.

-----Message d'origine-----
De : rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] De la part de Adam Glauser
Envoyé : jeudi 31 juillet 2008 14:43
À : rpg400-l@xxxxxxxxxxxx
Objet : Re: Question about service programs

On 31/07/2008, at 6:10 PM, David FOXWELL wrote:
We have not yet implemented the use of service programs. So each
program has its own copy of the code.
<snip>
If we have 50 people using the same interactive program that weighs
40 Mb, made up of many modules bound by copy and no service programs,
are there 50 copies of that program in activated or is it shared ?

Simon Coulter wrote:
All programs on OS/400 are re-entrant. There is only one copy of the
code loaded. Each user has their own copy of variable storage but they
all share the same copy of the code--even if they are running in
different main storage pools. It's been that way since System/38.


I think that David might have the right idea, but not asking quite the right question. To simplify David's case, lets suppose we have PGM0, consisting of modules MOD_0 and MOD_UTIL. We also have PGM1, consisting of MOD_1 and MOD_UTIL.

If I now run PGM0 which calls PGM1, wouldn't there essentially be two copies of the code for MOD_UTIL in memory? I think this must be the case, since if I change MOD_UTIL and rebind PGM0 but don't rebind PGM1,
PGM1 will still use the "old" version of the MOD_UTIL code.

In any case David, I would echo Simon's recommendation to start using Service Programs. It's really not hard, and it beats the "compile the world" maintenance model hands down.
--
This is the RPG programming on the AS400 / 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.


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.