A fault or an exception is injected into a target thread. Instructions are
processed and a target thread is recognized. As a result, an asynchronous
procedure call is queued. The asynchronous procedure call is run on the
target thread and the context of the target thread is modified. The
target thread is executed in the modified context and an exception is
raised in the target thread as a result of the modified context. The
exception is handled and processing of the instruction continues.