Just as a user can interactively launch additional processes while one process is already running, a process itself can programmatically spawn secondary processes. IBM Open Class's process API is both object-oriented and open, allowing you to spawn external processes on Windows NT, OS/2, and AIX with the same source code.
These components constitute the process API:
| IExternalProcess | Use to spawn a new process |
| INonGUIApplication | Use to control the external process |
| IApplication | Use to control a GUI process |
| ICurrentNonGUIApplication | Use to access the current active process |
| ICurrentApplication | Use to access the current active GUI process |
| IProcessId | Use to identify a process |
| enum EProcessPriority | Use to set the priority for running a process relative to other concurrent processes |
Each process can spin multiple threads to run within it. Therefore, an Open Class application can be both multi-process and multi-threaded.