Controlling Program Execution

Commands controlling execution operate on the current focus — either an individual thread or process, or a group of threads and processes. You can individually stop, start, step, and examine any thread or process, or perform these actions on a group.

In the UI, the focus of any execution command is the thread selected in the Processes and Threads view, and the width control selected from the Focus menu.

In Figure 104, the focus is on thread 0.1, and the width selected in the Focus menu is Process.

Figure 104. Selecting the focus in the UI

In the CLI, use the dfocus command with an arena specifier to define the thread of interest, the process of interest, the width, and optionally, a group on which to operate.

You can also synchronize execution across threads or processes using a barrierpoint, which holds any threads or processes in a group until each reaches a particular point.

Related topics

The dfocus command

dfocus

Focus and execution commands

Individual Execution Commands

Setting the focus to Group (Share) to run just a single share group

Executing a Single Share Group

Using the CLI to control program execution

Controlling Program Execution Using CLI Commands

Holding an individual process or thread to synchronize control execution

Hold and Release Processes and Threads

Introduction to barrier points

Synchronizing Execution with Barrier Points

Finely controlling focus using arenas

Arenas and P/T Sets