PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Gestion des threads
Gestion des threads
Débuté par Rémi, 28 avr. 2005 15:26 - Aucune réponse
Posté le 28 avril 2005 - 15:26
Bonjour,

J'ai un bouton "edition" qui permet d'éditer un état au format pdf dans un nouveau navigateur.
Comme le traitement de calcul de mon état peut être long, mon bouton ouvre un nouveau navigateur avec un message d'attente pour l'utilisateur pendant qu'un thread calcule le calcule le contenu de l'état et génère le fichier pdf. Lorsque le thread est terminé, le pdf s'affiche dans un 2ème navigateur. Tout cela fonctionne bien.

Mon pbl survient lorsque le user ferme le 2ème navigateur (celui avec le message d'attente) avant que le thread ait terminé. Dans ce cas, aucun de mes codes serveur de l'écran qui a déclenché le thread ne semble fonctionner avant que le thread n'ait terminé.
Résultat: ma page peut être "bloquée" pendant de nombreuses secondes.

Quelqu'un saurait-il comment je peux éviter cela?
Petites précisions: je n'ai pas ouvert de section critique pour le thread en question.
Il me parait compliquer de détecter la fermeture du 2ème navigateur et de le récupérer dans le thread pour l'arrêter automatiquement puisque la fonction threadarrete est forcément en code serveur, or la seule possibilité de détecter la fermeture du 2ème navigateur est forcément du code navigateur!

Merci de m'aider, je bloque....