In computer science, runtime is the duration of a program's actual execution, from beginning to end. (Compare compile-time.)

The same computer programs usually run on different runtime environments.

Some programming functions can only be executed (or are more efficient or accurate) when performed at runtime: such as dynamic type checking, boundary of array checking; for this reason, some programming bugs are not discovered until the program is tested in a "live" environment, despite sophisticated compile-time checking. Languages with type checking occurring at runtime are called "dynamically typed".

Java Virtual Machine is an example of such a program: it interprets portable binary Java programs (bytecode) at runtime.


See also: compiler, compile-time, binding, interpreter, runtime engine