CreateWorkUnit() — Create WLM work unit
Standards
Standards / Extensions | C or C++ | Dependencies |
---|---|---|
z/OS® UNIX | both |
Format
#include <sys/__wlm.h>
int CreateWorkUnit(wlmetok_t *enclavetoken,
server_classify_t classify,
char *arrival_time,
char *func_name);
General description
The CreateWorkUnit function provides the ability for an application
to create a WLM work unit.
- *enclavetoken
- Points to a data field of type wlmetok_t where the CreateWorkUnit() function is to return the WLM work unit enclave token.
- *classify
- Points to a server_classify_t structure that contains the classification information for the work request macro.
- *arrival_time
- Address of a doubleword (unsigned long long) field that contains the arrival time of the work request in STCK format.
- *func_name
- Points to a NULL-terminated character string that represents the descriptive function name of the associated work request.
Returned value
If successful, CreateWorkUnit() returns a pointer to work unit enclave token of type wlmetok_t.
If unsuccessful, CreateWorkUnit() returns -1 and sets errno
to one of the following values:
- Error Code
- Description
- EFAULT
- An argument of this function contained an address that was not accessible to the caller.
- EINVAL
- An argument of this function contained an incorrect value.
- EMVSSAF2ERR
- An error occurred in the security product.
- EMVSWLMERROR
- The WLM create failed. Use __errno2() to obtain the WLM service reason code for the failure.
- EPERM
- The calling thread's address space is not permitted to the BPX.WLMSERVER Facility class. The caller's address space must be permitted to the BPX.WLMSERVER Facility class if it is defined. If BPX.WLMSERVER is not defined, the calling process is not defined as a superuser (UID=0).
Related information
- sys/__wlm.h
- CheckSchEnv() — Check WLM scheduling environment
- ConnectServer() — Connect to WLM as a server manager
- ConnectWorkMgr() — Connect to WLM as a work manager
- ContinueWorkUnit() — Continue WLM work unit
- DeleteWorkUnit() — Delete a WLM work unit
- DisconnectServer() — Disconnect from WLM server
- ExtractWorkUnit() — Extract enclave service
- JoinWorkUnit() — Join a WLM work unit
- LeaveWorkUnit() — Leave a WLM work unit
- QueryMetrics() — Query WLM system information
- QuerySchEnv() — Query WLM scheduling environment