After it has completed its operation,
the program returns control to the client terminal and cannot launch itself on its own.
However,
while the program has control,
the program determines when to return control to the client terminal.
In other words, the client terminal cannot regain control from the program by itself.
Dynamic actions of the user (for example, forced termination of the program) are an exception.