2010-10-25 4 views
0

Comment terminer la fonction/code (pas la page entière) quand cela prend du temps, par exemple, plus de 1 sec?Comment terminer le code qui prend longtemps dans vb.net?

Si le code> 1 Sec Alors Terminate le code ....

Je trouve la commande "Server.ScriptTimeou", mais il arrête la page entière au lieu d'une commande.

+2

Quel est le problème concret qui vous a amené à chercher cela? –

Répondre

1

Vous pouvez exécuter votre fonction dans un processus d'arrière-plan et démarrer une minuterie simultanément. Ensuite, abandonnez le processus s'il dure plus d'une seconde.

Si vous voulez exécuter au premier plan alors vous avez probablement une boucle quelque part qui prend beaucoup de temps. Avant de commencer à courir, sauvegardez l'heure actuelle. Ensuite, quelque part au milieu de la boucle, comparez l'heure enregistrée à l'heure actuelle. Quand il frappe une seconde, sortir de la boucle.

0

La solution dépend de ce que vous faites. Si vous appelez une seule fonction sur laquelle vous n'avez aucun contrôle et qui peut parfois durer plus d'une seconde, vous êtes pratiquement obligé d'exécuter cette fonction sur un thread d'arrière-plan, puis de terminer le thread s'il s'exécute longue.

Si vous exécutez une longue boucle, ou un autre code que vous contrôlez, vous pouvez juste noter l'heure actuelle avant de démarrer le processus, et dans la boucle, vérifiez si vous avez exécuté longtemps, et si c'est le cas, quittez la boucle.

Tout dépend.

Questions connexes