Debugging a Join Timeout
In earlier versions of the process debugger, join timeouts were fired manually. You can still choose whether or not to execute a join timeout in the process debugger. The interaction is somewhat different.
When a join times out, the join step becomes eligible for debugging.
Note: There is no visual distinction between a join step that has timed out and a join step that has completed successfully.
When a join step becomes eligible due to a timeout, you may or may or may not choose to execute that step right away. If you execute the join step BEFORE the join is complete, debugger takes the timeout transition. If you do NOT execute the join step right away, and the join eventually completes, the process behaves as if the join never timed out. In this way, you can choose whether or not to take the join timeout transition while debugging without having to adjust the timeout expiration settings.
Note: The process debugger does not stop on an intermediate start step (a receive step, for example) unless you set a breakpoint on it. If a process thread starts from an intermediate start step, the debugger runs through the thread to its completion by default if no breakpoint is set on the start step.