Non-waiting blocks have the stack continue even if the block’s behavior is not yet complete.
The [Drive] block is a good example of a non-waiting block. In the example below, the Code Base does not move because the [Drive] block begins, but then the [Stop driving] block stops it before the motors can move.
Non-waiting blocks are useful when you want to perform multiple behaviors at the same time.
Waiting blocks pause the rest of the stack until that block’s behavior has been completed.
Most waiting blocks are found among the Motion and Drivetrain blocks.
If a Code Base needs to drive in a 300mm square, you can use waiting blocks to have the Code Base carry out each behavior individually.