The data structure kc_tasks_par_str is defined for the parameter type KC_TASKS_PAR. In the case of KC_GET_OBJECT, UTM returns all information on the processes of the application in kc_tasks_par_str:
The maximum and current settings for the number of processes of the application.
The maximum number of processes that may process asynchronous jobs at one time.
The number of processes that may run at one time that contain program units with blocking calls (for example PGWT).
The number of processed reserved for processing internal UTM jobs and dialog jobs, that do not belong to a dialog TAC class. This number is only returned if job processing is priority controlled in the application, i.e. if the TAC-PROPERTIES statement was set during KDCDEF generation.
mod1 | Data structure kc_tasks_par_str |
- |
|
- |
|
- |
|
x(A) |
|
x(A) |
|
x(A) |
|
- |
|
- |
|
- |
|
- |
|
- |
|
x(A) |
|
- |
|
- |
|
1 The contents of the field can be modified with KC_MODIFY_OBJECT; see "obj_type=KC_TASKS_PAR"
The fields in the data structure have the following meanings:
tasks
The control value generated for the maximum number of processes that may be used for the application.
The actual maximum number of processes that may process jobs of the application is determined at the start of the application and can be adjusted according to the actual demand during the application run (see mod_max_tasks). Neither the number of processes specified at the start nor the number set by the administration may exceed the value in tasks.
asyntasks
The control value generated for the maximum number of processes of the application that may be used for asynchronous processing at one time. The desired maximum number of processes for processing asynchronous jobs in the current application run can be set at the start of the application or by the administration (see the mod_max_asyntasks field). This number may not exceed the value of asyntasks.
tasks_in_pgwt
The control value generated for the maximum number of processes in which program units with blocking calls may run simultaneously (e.g. the KDCS call PGWT; Program Wait). The desired maximum number of processes for the current application run can be set at the start of the application or by the administration (see the mod_max_tasks_in_pgwt field). This number must not exceed the value of tasks_in_pgwt.
mod_max_tasks
Contains the current setting for the maximum total number of processes that may be used for the application at one time. mod_max_tasks contains the last setting of this number, which is either the number set at the start of the application or the number set by the administration (e.g. KC_MODIFY_OBJECT with KC_TASKS_PAR).
mod_max_tasks contains the set point for the current number of processes. The number of processes that are actually active currently and that can process the current jobs of the application is stored in the curr_tasks field. This may differ temporarily from the value in mod_max_tasks when a process is started or terminated, but only then.
Maximum value: tasks
Minimum value: '1'
mod_max_asyntasks
Currently set limit value for the maximum number of processes that may be used for asynchronous processing. mod_max_asyntasks contains the last setting for the number of processes for asynchronous processing that was set either at start of the application or by the administration (e.g. KC_MODIFY_OBJECT with KC_TASKS_PAR).
The actual maximum number of processes that can be used at any one time for asynchronous processing (curr_max_asyntasks) can be lower than the value specified in mod_max_asyntasks because the actual number is limited by the number of currently running processes of the application (curr_tasks).
mod_max_asyntasks corresponds to a current upper limit.
Minimum value: '0'
Maximum value: the number in asyntasks
mod_max_tasks_in_pgwt
Currently set limit value for the maximum number of processes in which program units with blocking calls may run simultaneously (Program Wait; e.g. the KDCS call PGWT). mod_max_tasks_in_pgwt contains the setting for number of processes that was set either at start of the application or by the administration (e.g. KC_MODIFY_OBJECT with KC_TASKS_PAR).
The actual maximum number of processes that process program units with blocking calls (curr_max_tasks_in_pgwt) at any one time can be lower than the value specified in mod_max_tasks_in_pgwt because the actual number must at least 1 less than the number of currently running processes of the application (curr_tasks).
mod_max_tasks_in_pgwt corresponds to a current upper limit.
Minimum value: '0'
Maximum value: the number in tasks_in_pgwt
curr_max_asyntasks
The current maximum number of processes that may be used for asynchronous processing at one time. This number of processes is equal to whichever is lower of either the currently set maximum number of processes that can be used concurrently for asynchronous processing (mod_max_asyntasks) or the number of currently running processes of the application (curr_tasks). curr_max_asyntasks is changed dynamically by UTM when one of the two values curr_tasks or mod_max_asyntasks is changed. See also "Possible measures".
curr_max_tasks_in_pgwt
Current setting for the maximum number of processes in which program units with blocking calls may run simultaneously (KDCS call PGWT). This number of processes is equal to whichever is lower of either the currently set maximum number of processes in which program units with blocking calls can run concurrently (mod_max_tasksk_in_pgwt) or the number of currently running processes of the application (curr_tasks) minus one. curr_max_asyntasks is changed by UTM dynamically when one of the two values curr_tasks or mod_max_tasks_in_pgwt is changed. See also "Possible measures".
curr_tasks
Contains the number of processes of the application currently running. The value of curr_tasks usually corresponds to the value of mod_max_tasks. The value of curr_tasks can, however, be temporarily larger or smaller than mod_max_tasks. It is smaller if a process has terminated abnormally and has not been automatically restarted yet. It can be larger if the set point for the number of processes in mod_max_tasks was just recently lowered. curr_tasks contains the current value of the number of processes, mod_max_tasks contains the set point.
curr_asyntasks
Contains the number of processes currently processing asynchronous jobs.
curr_tasks_in_pgwt
Contains the number of processes currently processing program units with blocking calls (e.g. PGWT), i.e. the number of processes currently waiting in Program Wait.
mod_free_dial_tasks
Only applies if the TAC-PRIORITIES statement was issued during the KDCDEF generation.
UTM returns the current setting for the number of processes reserved for processing internal UTM tasks and jobs that are not assigned to a dialog TAC class in mod_free_dial_tasks. This portion of the total number of processes is consequently not available for processing jobs to dialog TAC classes.
If the maximum number of application processes is reduced and this number is then smaller or equal to mod_free_dial_tasks, one process nevertheless processes jobs to dialog TAC classes.
Minimum value: '0'
Maximum value: value in tasks -1
If the application is generated without TAC-PRIORITIES, then UTM returns blanks in mod_free_dial_tasks.
gen_system_tasks
Contains the maximum number of UTM system processes that can be started based on the current configuration.
curr_system_tasks
Contains the number of currently running UTM system processes.