Activation Group Creation
Activation Group Creation
You can control the runtime creation of a non-default activation group by specifying an activation group attribute when you create your program or service program. The attribute is specified by using the ACTGRP parameter on the CRTPGM command or CRTSRVPGM command. There is no Create Activation Group command.
All ILE programs have one of the following activation group attributes:
-
A user-named activation group
Specified with the ACTGRP(name) parameter. This attribute allows you to manage a collection of ILE programs and service programs as one application. The activation group is created when it is first needed. It is then used by all programs and service programs that specify the same activation group name.
-
A system-named activation group
Specified with the ACTGRP(*NEW) parameter on the CRTPGM command. This attribute allows you to create a new activation group whenever the program is called. ILE selects a name for this activation group. The name assigned by ILE is unique within your job. The name assigned to a system-named activation group does not match any name you choose for a user-named activation group. Service programs do not support this attribute.
-
An attribute to use the activation group of the calling program
Specified with the ACTGRP(*CALLER) parameter. This attribute allows you to create an ILE program or service program that will be activated within the activation group of the calling program. With this attribute, a new activation group is never created when the program or service program is activated.
-
An attribute to choose the activation group appropriate to the programming language and storage model.
Specified with the ACTGRP(*ENTMOD) parameter on the CRTPGM command. When ACTGRP(*ENTMOD) is specified, the program entry procedure module specified by the ENTMOD parameter is examined. One of the following occurs:
- If the module attribute is RPGLE, CBLLE, or CLLE, and
- if STGMDL(*SNGLVL) is specified, then QILE is used as the activation group.
- if STGMDL(*TERASPACE) is specified, then QILETS is used as the activation group.
- If the module attribute is not RPGLE, CBLLE, or CLLE, then *NEW is used as the activation group.ACTGRP(*ENTMOD) is the default value for this parameter of the CRTPGM command.
- If the module attribute is RPGLE, CBLLE, or CLLE, and
All activation groups within a job have a name. Once an activation group exists within a job, it is used to activate programs and service programs that specify that name. As a result of this design, duplicate activation group names cannot exist within one job.
The ACTGRP parameter on the UPDPGM and UPDSRVPGM commands can be used to change the activation group into which the program or service program is activated.