It is also useful to have several applications running
simultaneously on behalf of the same user.
For instance an editor and a compiler could run together.
The editor could be higher priority so that the compiler runs only when the
editor is waiting for user input.