### Multi-processing

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.