Est-il possible d'exécuter à nouveau le code dans le bloc try après une exception dans catch in catch block?
Je veux exécuter le code dans le bloc d'essayer de nouveau après qu'une exception est interceptée. Est-ce possible en quelque sorte?
Pour Exemple:
try
{
//execute some code
}
catch(Exception e)
{
}
Si l'exception est interceptée je veux aller dans le bloc d'essayer de nouveau sur "exécuter un code" et à nouveau essayer de l'exécuter.
source d'informationauteur Infant Dev
Vous devez vous connecter pour publier un commentaire.
Le mettre dans une boucle. Éventuellement une boucle while autour d'un drapeau booléen pour contrôler enfin, lorsque vous souhaitez quitter.
Juste être prudent pour éviter une boucle infinie.
Une meilleure approche serait de mettre votre "code" au sein de sa propre méthode, vous pouvez ensuite appeler la méthode au sein de l'essayer et attraper le plus approprié.
Si vous enveloppez de votre bloc de la méthode, vous pouvez appeler récursivement il
ou vous pourriez le faire dans une boucle.
déjà répondu à ces (et d'autres) liens
Meilleure façon d'écrire à la logique de nouvelle tentative sans goto
Façon la plus propre d'écrire logique de nouvelle tentative?
Comment puis-je améliorer cette exception réessayer scénario?
Il y a une autre façon de le faire (même si comme d'autres l'ont mentionné, pas vraiment recommandé). Voici un exemple d'utilisation d'un fichier de téléchargement réessayer pour correspondre plus étroitement à la
retry
mot-clé trouvé en Ruby en VB6.Cela devrait fonctionner:
Quel est le problème avec le fournisseur ole
goto
?