×
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.
Most of your questions have already been discussed frequently in this
list. I suggest you search the archives and also read the ILE
Concepts manual. Other comments follow:
On 28/02/2008, at 10:02 PM, David FOXWELL wrote:
OK, OK so I've never used a service program before and nor has
anyone else in our shop.
Then you should refrain from commenting and just question.
I've done a little more reading and come up with this, please
someone correct me if I'm wrong.
A program containing only modules is bound by copy and all the code
from all the modules is duplicated in one executable object.
True.
When a service program is added, a reference is bound to the
program. The code is therefore not duplicated. The adress of this
code will be established at the first call of the procedure in the
service program.
Effectively true.
Some questions :
Are our programmes being created from modules bound by copy are
much heavier than if they were bound by copy?
Unclear question! I presume your second reference to 'copy' should
have been 'reference'. If so, then what do you mean by "heavier"? If
you mean may occupy more disk space then they MAY do. If the module
bound by copy is used in only one program there is little advantage
to putting that module in a service program. If the module is used in
more than one program then by using a service program you will reduce
the size of each program and you will simplify maintenance.
Will this have a noticeable effect on performance?
No. Note that in some cases excessive use of service programs, or
using a single large service program will have a detrimental
performance impact.
I notice we have programmes of 100 MB.
And?
What happens if a program is called and the procedure in a service
program has changed
Depends on how the change was made. If done properly it will have no
effect on the caller. If done incorrectly then you will have a
learning experience.
or if the service program was deleted?
You will get a run-time error when the consuming program is invoked.
Why bind by copy instead of by reference?
Because it facilitates better code reuse, it provides the ability to
properly encapsulate function, it gives the ability to define a
public and private interface, and it gives almost all the benefits of
dynamic program call without the perceived performance impact.
Regards,
Simon Coulter.
--------------------------------------------------------------------
FlyByNight Software OS/400, i5/OS Technical Specialists
http://www.flybynight.com.au/
Phone: +61 2 6657 8251 Mobile: +61 0411 091 400 /"\
Fax: +61 2 6657 8251 \ /
X
ASCII Ribbon campaign against HTML E-Mail / \
--------------------------------------------------------------------
As an Amazon Associate we earn from qualifying purchases.