Processes (Jobs)
Background Information
A CPU process is an instance of a Caché virtual machine running on a Caché server. Every active process has a unique job number. You typically use the Management Portal to view the process list and, if necessary, suspend, resume, or terminate them; see “Controlling Caché Processes” in the Caché System Administration Guide.
In Ensemble, a CPU process is called a job, to avoid confusion with the term business processes, which are frequently referred to simply as processes. This usage is reflected in the Ensemble parts of the Management Portal, as well as in the Ensemble books.
Available Tools
This structured system variable returns information about processes.
Availability: All namespaces.
Allows manipulation and display of the current process. This class provides class methods like the following:
-
BatchFlag()
-
CallingRoutine()
-
ExceptionLog()
-
GetCPUTime()
-
NodeNameInPid()
-
PrivateGlobalLocation()
-
TruncateOverflow()
-
And others
Some of the class methods have restrictions on where they may be called.
Availability: All namespaces.
Provides the following class methods:
-
ProcessID()
-
MaxLocalLength()
Availability: All namespaces.
Provides the following class methods:
-
JobPrio()
-
GetPrio()
-
SetBatch()
-
SetPrio()
Availability: All namespaces.
Enables you to display and manipulate Caché processes. This class provides properties that you can set to modify a process, as well as read-only properties that provide information about its current state. Properties of this class include:
-
CSPSessionID
-
ClientExecutableName
-
CurrentDevice
-
JobType
-
LastGlobalReference
-
Priority
-
Routine
-
UserName
-
And others
It also provides the following class methods:
-
GetCPUTime()
-
KillAllPrivateGlobals()
-
NextProcess()
-
And others
It also provides queries, which include:
-
AllFields()
-
CONTROLPANEL()
-
JOBEXAM()
-
And others
Availability: All namespaces.
Provides instance methods which operate on a process instance as well as class methods for use by managers. This class provides the following methods:
-
ProcessTableSize()
-
ReleaseAllLocks()
-
Resume()
-
Suspend()
-
Terminate()
This class extends %SYS.ProcessQueryOpens in a new tab and thus also includes the properties, methods, and queries of that class.
Availability: %SYS namespace.
Reminder
The special variable $SYSTEM is bound to the %SYSTEM package. This means that (for ObjectScript) instead of ##class(%SYSTEM.class).method(), you can use $SYSTEM.class.method().