begin process at 2012 02 10 10:49:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

.NET

 > 

Fin d'un thread en .NET


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fin d'un thread en .NET

lundi 31 janvier 2005 à 14:47:11 | Fin d'un thread en .NET

Frederyck

Salut à toutes et à tous,

alors voici mon soucis, dans une application que je réalise en C#, j'utilise dans un de mes objets (que j'appelerai ici objB) un objet Thread, celui-ci est associé à une méthode qui se charge d'exécuter une requête HTTP et d'enregistrer le contenu. La durée d'enregistrement est fonction du contenu. Je dispose d'une autre classe (objA) qui elle possède un Timer qui tout les X millisecondes va créer un certains nombre d'objB et les initialiser (en donnant entre autre l'adresse de l'url à exécuter). Jusqu'ici tut va bien dira t'on .
Mon soucis est qu'apres la 1ère exécution, dans la méthode de mon timer je réintialise mon objetA, lors du retour à la phase d'initialisation des objets B, je rencontre une exception au moment du objBThread.start() qui est censé lancer la méthode d'enregistrement. L'erreur est " Le thread est en cours d'exécution ou arrêté ; il ne peut pas redémarrer."

Je n'arrive pas à comprendre pourquoi car en principe il s'agit d'un nouvel objet...Alors où est le lien ? Les précédents threads sont ils toujours en ours d'exécution ? Faut il forcer la fin d'un thread une fois que le traitement dans la méthode est terminé ? Comment faire cela ?

Merci pour votre aide

Frederyck
lundi 31 janvier 2005 à 20:20:10 | Re : Fin d'un thread en .NET

MorpionMx

Membre Club Administrateur CodeS-SourceS
Comme ca, je sais pas trop d'ou vient le prbleme. Mais essaie d'attendre la fin d'execution des threads (apres ton thread.Start(); tu forces l'attenre en ajoutant thread.Join());

Au pire, Abort tes Threads quand ton timer se déclenche...
Mais sinon, je pense qu'on arriverais mieux a visualiser la chose avec un peu de code.



Mx
mardi 29 juin 2010 à 09:18:11 | Re : Fin d'un thread en .NET

zanzan

Membre Club
Salut
j'ai le même problème que toi - as tu une solution ?


Zan
mardi 29 juin 2010 à 09:23:24 | Re : Fin d'un thread en .NET

zanzan

Membre Club
J'ai trouvé pour moi une solution.

Avant de faire un start de ton thread, tu test son état.

if (ThreadService.ThreadState == ThreadState.Unstarted) ThreadService.Start();

else if (ThreadService.ThreadState == ThreadState.Stopped)
{
ThreadService.Abort();
ThreadService = null;
ThreadService = new Thread(new ThreadStart(FctThreadScruteService));
ThreadService.Start();
}


Donc si l'état du service est ThreadState.Stopped, tu Abord ton service pour ensuite le redéfinir et le redemarrer.

Quand aux Pourquoi ?
je sais pas!


Zan


Cette discussion est classée dans : fin, net, thread, méthode, exécution


Répondre à ce message

Sujets en rapport avec ce message

interrompre l'exécution d'un thread [ par mathmax ] Bonjour,Je travaille avec un contrôle WPF dont je souhaite modifier ses propriétés dans un autre thread. Je voudrais pouvoir interrompre l'exécution d Exécution sous Thread spécifique [ par thegitch ] Bonjour à tous,Comment, depuis un thread B, exécuter une méthode sous un thread A ? Je m'explique.Le thread A est le thread principal, le main, le thr impossible d'acceder à la méthode dispose de System.Net.Sockets [ par katwes ] Bonjour,J'utilise  la classe System.Net.Sockets pour me connecter en telnet.Mais j'aimerai utiliser la méthode dispose pour libérer toutes les ressour Stopper un thread en cliquant sur un boutton (.NET 3.5) [ par Jerepain ] Bonjour !Voici mon problème : Un bouton crée un Thread : Thread readThread = new Thread(Read);Il le démarre : readThread.Start();J'aimerais qu'un autr Exécution plus rapide des application .Net [ par naylouvar ] Bonjour (chui un débutant et chui pas français alors désolé pour la syntaxe)Par défaut la première exécution d'un programme .Net 2.0 (CLR)est relative Attendre la fin de l'exécution de plusieurs threads ? [ par Stex2010 ] Bonjour, J'ai un programme dans lequel je souhaite exécuter plusieurs opérations simultanément, mais je dois attendre que toutes ces opérations soien Connaître la fin de lecture d'un fichier son [ par benzebuth666 ] Salut tout le monde,J'ai un problème avec la classe SoundPlayer Je voudrais lire un fichier wav et ensuite continuer le déroulement du programme. Mais Appel distant pour ouvrir un formulaire avec .Net Remoting [ par kikiokiller ] Bonjour,Est ce quelqu'un connais un lien sur internet qui pourrait m'expliquer comment on ouvre un formulaire à distance avec .net remoting?Topo: clie .Connect(EndPoint) ; //.NET [ par JacquelineJacqueline ] Bonsoir,J'utilise la méthode .Connect(EndPoint) pour ouvrir un socket.EndPoint contient l'adresse IP serveur.Si le serveur est présent, tout ce passe date+c#+asp.net [ par radmanolf ] slt,je voudrais savoir comment peut on ajouter un mois à une date fixe!!!!!!en faite j'ai un code et je dois le convertir en c# DATE_FIN = DATEADD("m"


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales