Eine Ausnahme ist eine ungewöhnliche Bedingung, die eine Abweichung vom normalen Programmablauf erfordert. Normalerweise sollte eine Ausnahme nicht zu einem Totalausfall führen, sondern von einem Ausnahmebehandler behandelt werden. Die Ausnahmebehandlung ist ein in vielen Programmiersprachen integriertes Konstrukt. In der Regel werden Ausnahmen behandelt, indem der Stapel abgewickelt wird, ein Rollback auf einen definierten Zustand außerhalb des Bereichs der Ausnahme durchgeführt und anschließend ein Handlerblock oder eine Routine aufgerufen wird.