Only one Command can be outstanding per instance of the shell. You must terminate the command using Signal as the last message ...

Only one Command can be outstanding per instance of the shell. You must terminate the command using Signal as the last message in all cases, whether the command is terminated early or run to completion. 
Resend the Command request after a SignalResponse is received.