Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Arret d'un thread [ Archives / Au secours ] (icedreamer)

dimanche 9 janvier 2005 à 16:37:32 | Arret d'un thread

icedreamer

Bonjour,

J'essaye d'arreter proprement un thread de cette manière :
t.Abort();
ce qui effectue bien l'arret du thread ...mais il m'affiche un message :
"Thread was being aborted"

Comment puis-je "bloquer" ce message et afficher un message perso ?
(Note : j'ai essayé avec try/catch mais sans résultats)

Merci de votre aide !

dimanche 9 janvier 2005 à 17:48:19 | Re : Arret d'un thread

MorpionMx

Membre Club Administrateur CodeS-SourceS

Tu n'arrives pas a catcher l'exception ThreadAbortException ?

dimanche 9 janvier 2005 à 18:05:03 | Re : Arret d'un thread

MorpionMx

Membre Club Administrateur CodeS-SourceS
Tu peux toujours aussi attendre la fin de l'execution du Thread, avec la méthode tonThread.Join();

Mais tu devrais poster un bout de code pour qu'on puisse t'aider plus efficacement.

Mx

dimanche 9 janvier 2005 à 19:24:16 | Re : Arret d'un thread

icedreamer

Je viens d'essayer et je peux catcher l'exception au niveau de la fonction appeler par le thread mais j'ai toujours le message en plus de mon propre message !
//**********************

private void LaunchDownload()

{

t = new Thread(new ThreadStart(DownloadFiles));

t.Start();

}

public void DownloadFiles()
  {
   try{
    //Téléchargement d'un ou plusieurs fichiers
   }
   catch(ThreadAbortException tex)
   {
    ut.Mbox("debug",tex.Message,1);
   }
  }

void BtnCancelClick(object sender, System.EventArgs e)

{

t.Abort();

}

Voilà


dimanche 9 janvier 2005 à 19:44:39 | Re : Arret d'un thread

MorpionMx

Membre Club Administrateur CodeS-SourceS
J'ai pris une form avec 2 boutons (button1 et button2). Compilé en exe pour pouvoir ecrire dans la console.
Avec le code ci dessous, (qui n'a rien de special), ca marche.
Si je commente le message dans le catch, je n'ai pas de message (mais ca ne plante pas).
C'est le résultat voulu il me semble. Donc apres je comprends pas pourquoi ca marche pas chez toi.
Si tu veux un message perso a la place du "Thread wad being aborted", tu changes juste
Console.WriteLine(tex.Message);
par
Console.WriteLine("Mon message perso");

[code]
private void LaunchDownload()
{
     t = new Thread(new ThreadStart(DownloadFiles));
     t.Start();
}

 public void DownloadFiles()
{
    while(true)
    {
         try
        {
            Console.WriteLine(""+ i++);
            Thread.Sleep(100);
        }
        catch(ThreadAbortException tex)
        {
             Console.WriteLine(tex.Message);
        }
    }
}

private void button1_Click(object sender, System.EventArgs e)
{
         t.Abort();
}

private void button2_Click(object sender, System.EventArgs e)
{
     LaunchDownload();
}

[/code]

Mx

jeudi 13 janvier 2005 à 21:51:25 | Re : Arret d'un thread

icedreamer

Enfin !

Je viens de trouver ! En fait j'avais deux try/catch imbriqués et j'avais catché le tex dans le try le plus haut donc ...
Solution : Supprimé un catch !

Merci pour ton aide !

Code :
try{
    aa
    bb
    try{
          cc
          dd
   }
   catch(Exception e) { mon message}
   ee
}
catch(ThreadAbortException tex) { mon message }

PAS BON !!!

try{
    aa
    bb
}
catch(ThreadAbortException tex) { mon message }

BON !



Cette discussion est classé dans : message, arret, thread


Répondre à ce message

Sujets en rapport avec ce message

Pb d'affichage de fenetre et thread... [ par bigflo ] Salut,Je developpe un client de tchat en c#.Mais j'ai quelque pb d'affichage des fenetres de tchat. Explication:Bon, j'ai une treeview et lorsque je d Probleme arret programme | Thread [ par ChamY ] Bonjour,j ai un ptit probleme pour terminer mon programme.Un de mes boutons lance une tache de ma classe annexe. Cette tache ouvre un socket et attend Ca marche...qu'avec un point d'arret ! [ par zigxag ] Bonjour !je sollicite votre aide car là je ne vois plus de solution à mon probleme...J'ai mis en place une communication client/server par socket, en Thread Events Invoke --> Je rends les armes .... [ par ylerazer ] Bonjour, je suis nouveau en C# et j'essaie de me faire des classes intelligentes .. mais j'ai bien peur qu'elles ne soient plus intelligentes que moi. PB avec activeX [ par titi66 ] Bonjourj'utilise un activex pour controler des caméras IP , lorsque je veux afficher une deuxieme fenetre avec une caméra j'ai le message suivant : "I thread et variable de classe [ par neoisback ] Bonjour,Je vous explique mon probleme :je developpe un server tcp dans le cadre d'un projet, j'ai creer une form afin de suivre les information que re Fermeture application [ par thebigboss ] Bonjour,j'ai un petit soucis, je suis en train de développer une petite appli à base de Thread, de TCPClient, de NetworkStream, de TCPListener et de S Problème avec Mon appli [ par Noursounet ] Bonjour à tous! Je me suis mis il y a pas très longtemps au C#. Je développe donc en ce moment mes propres DLL de Client/Serveur et par habitude j'aim Transfert données entre une Thread et un Form [ par walteau ] Bonjour à tous, je suis en train de développer dans le cadre d'experimentation une application qui envoi un message Udp vers le port 11000 de mon pc. [.NET2] Probleme de copie d'un objet entre thread [ par iow4 ] Bonjour, Je developpe actuellement une application multi-thread avec des délégués asynchrone. La fonction attachée au délégués prend en parametre un l


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


HTC G1

Entre 449€ et 449€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 12,012 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.