CEEPLODT — thread level load service
The CEEPLODT CWI callable service loads the named routine into storage. Underlying host system services are used. For a discussion of the search orders for the various host systems, see Loading and deleting programs in different environments.
Syntax
void (*CEECELVPLODT) (name_len, name, address, mod_size,
[fc])
INT4 *name_len;
CHAR8 *name;
POINTER *address;
INT4 *mod_size;
FEEDBACK *fc;
- CEECELVPLODT
- A field in the Language Environment LIBVEC
that points to the thread-level Program Load CWI. Call this CWI interface
as follows:
L R15,CEECAACELV-CEECAA(,R12) CAA address is in R12 L R15,3492(,R15) BALR R14,R15
- name_len (input)
- The number of bytes of the routine name to be loaded.
- name (input)
- The name of the routine to load into storage.
- address (output)
- The address of the entry point to the loaded module.
- mod_size (output)
- The number of bytes occupied by the newly-loaded load module. If the size cannot be determined, a zero is returned.
- fc (output/optional)
- A parameter which contains the condition token; possible conditions
are:
Condition Description type Description value CEE000 Severity 0 Msg_No N/A Message The service completed successfully. CEE3DC Severity 3 Msg_No 3500 Message Not enough storage available to load [module_name]. CEE3DD Severity 3 Msg_No 3501 Message [module_name] module not found. CEE3DE Severity 3 Msg_No 3502 Message [module_name] module name too long. CEE3DF Severity 3 Msg_No 3503 Message Load service request for module [module_name] was unsuccessful. CEE3EJ Severity 3 Msg_No 3539 Message The load request for program object [module_name] was unsuccessful for the current level of CICS®. CEE3EK Severity 3 Msg_No 3540 Message The load request for program object [module_name] was unsuccessful.
Usage Notes:
- Language Environment maintains a list of all modules loaded by the thread-level load service but as yet not deleted. This list is maintained so that Language Environment can delete all as not yet deleted modules it loaded with the thread-level load service during the life of the thread when the thread terminates.
- The user can issue a corresponding thread-level delete service request for each thread load service request.
- This service can be used in all environments, MVS™, CICS, pre-initialization, multi-threaded and non-multi-threaded.
- Each call to the service will result in a load system request. The operating system determines whether to load another copy or just return a pointer to another copy already in storage.
- The search order for the module is system dependent; see Loading and deleting programs in different environments for details.
- The CEEPLODT service does not support the loading of program objects with deferred load classes. For example, CEEPLODT will not support a reentrant C program that was built without using the Pre-linker utility. The CEEPLOD2 CWI should be used instead.