2010-05-16 10 views
0

J'ai une page asp.net qui exécute certains algorithmes et renvoie la sortie. Je me demandais ce qui allait se passer et comment gérer un cas où l'algorithme dû à un bogue passe en boucle infinie. Il va câliner le cpu et d'autres sessions seront servis très lentement.Détecter une session et la tuer

Je voudrais avoir un moyen de dire à IIS, si le traitement de Algo.aspx prend plus de 5 secondes, le tuer ou quelque chose comme ça.

Merci d'avance

Répondre

0

Il n'y a rien de tel dans IIS. Ce que vous pouvez faire à la place est d'effectuer le travail dans un thread d'arrière-plan et de mesurer le temps qu'il faut pour terminer cette tâche en arrière-plan et simplement tuer le thread si le temps d'attente est plus long que prévu.

Vous pouvez jeter un oeil à la méthode WaitHandle.WaitOne qui vous permet de spécifier un délai d'attente pour qu'un événement particulier soit signalé à partir d'un thread d'arrière-plan par exemple.

0

Définissez la propriété ScriptTimeout. Il annulera la page si le temps est dépassé. Cela ne fonctionne que lorsque la propriété de débogage est définie sur true, cependant.

Questions connexes