An exit reason is an arbitrary Elixir term describing why a process terminated. A function that finishes normally exits with :normal; exit/1 lets code choose another reason. section 8.2.1 section 8.1.1
Exit reasons determine how concurrent systems react:
- Linked processes receive the terminating process’s PID and exit reason; non-normal reasons normally propagate termination to linked processes. section 8.2.1
- Supervisors can restart a crashed child, while :kill unconditionally terminates the target process even when it traps exits. section 8.3.2
Inspecting a linked crash
A linked process that raises emits an exit signal containing its PID and a structured reason, such as a RuntimeError and stacktrace.
