Parar instruções no Visual Basic

A instrução Parada do Visual Basic fornece uma alternativa programática para definir um ponto de interrupção. Quando o depurador encontra uma instrução Stop, ele interrompe a execução do programa (entra no modo de interrupção). Os programadores C# podem obter o mesmo efeito usando uma chamada para Debugger.Break.

Você define ou remove uma instrução Stop editando seu código-fonte. Você não pode definir ou limpar declarações de parada usando comandos de depurador, como faria com um ponto de interrupção.

Ao contrário de uma instrução End, a instrução Stop não redefine variáveis nem retorna você ao modo de design. Você pode escolher Continuar no menu Depurar para continuar executando o aplicativo.

Quando você executa um aplicativo do Visual Basic fora do depurador, uma instrução Stop inicia o depurador se a depuração Just-in-Time estiver habilitada. Se a depuração just-in-time não estiver habilitada, a instrução Stop se comportará como se fosse uma instrução End e encerrará a execução. Nenhum evento QueryUnload ou Unload ocorre, portanto, você deve remover todas as instruções Stop da versão de liberação do seu aplicativo do Visual Basic. Para obter mais informações, consulte Just-In-Time Debugging.

Para evitar a necessidade de remover declarações Stop, você pode usar a compilação condicional:

#If DEBUG Then
   Stop
#Else
   ' Don't stop
#End If

Outra alternativa é usar uma Debug.Assert instrução em vez da instrução Stop. Uma Debug.Assert instrução interrompe a execução somente quando uma condição especificada não é atendida. Assert as instruções são removidas automaticamente quando uma versão Final é criada. Para obter mais informações, consulte Asserções no Código Gerenciado. Se você quiser uma instrução Assert que sempre interrompa a execução na versão de Depuração, faça isso:

Debug.Assert(false);

Outra alternativa é usar o Debug.Fail método:

Debug.Fail("a clever output string goes here");