|
> From: David Gibbs > > Just for the purposes of discussion ... wouldn't it be a reasonable > approach to use *NEW for the main entry point into a system (main menu, > command processing program, published API, etc), and then *CALLER for > everything else (I'm not exactly sure what the best thing to do with VCP's > and Prompt override programs)? This makes sense, David. Personally, I also like *NEW for top level programs, with *CALLER for called programs, because it ensures that the subprograms get initialized on each call to the top level program. When I have control over the environment, that's the way I do things. It's a little harder to figure out when you should create a *NEW AG for server programs. Do you do it once when the server starts, or once for each request? Empirical evidence suggests that IBM creates a new activation group for each call to a host server, and so sharing data between server invocatiosn requires either creating true persistent objects (such as user spaces) or using a named activation group to store persistent data. I'd be interested to know from anybody at IBM whether this is indeed the case: do server programs such as the host servers create a *NEW AG for each request? Joe
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.