How to use delay command?

I used the Delay command,
It doesn’t work well.
I changed the direction with condition_yaw and waited for 3 seconds with delay as follwoing.

34 WAYPOINT 2 ********
35 CONDITION_YAW 222 ********
36 DELAY 3 *******
37 CONDITION_YAW 222 *******
38 WAYPOINT 2 *******

But copter changed its direction then went to waypoint 38 without delay action.
Did I write it wrong?

And, I made a mistake in delay command as to wait for 0 seconds as followings,

40 WAYPOINT 2 ********
41 CONDITION_YAW 342 ********
42 DELAY 0 ********
43 CONDITION_YAW 342 ********
44 WAYPOINT 2 ********

Copter stayed at waypoint 40,
and it never moved until I chane mode to Pos_hold.
DELAY 0 means dead-lock?

How can I use Delay?