Lancement et Création de Thread

Résolu
skyline86 Messages postés 29 Date d'inscription mardi 21 octobre 2008 Statut Membre Dernière intervention 5 décembre 2009 - 21 avril 2009 à 12:21
skyline86 Messages postés 29 Date d'inscription mardi 21 octobre 2008 Statut Membre Dernière intervention 5 décembre 2009 - 22 avril 2009 à 09:59
Bonjour, je viens vers vous car j'ai un problème avec mon programme en C#.

Je vous explique d'abord de le but du programme :

Ce programme doit pouvoir écouter plusieurs ports TCP 24h/24h et 7j/7j et en même temps.
Donc quand je fais l'écoute j'ai une boucle sans fin (logique pour écouter tout le temps). Cela marche très bien sur un port TCP.

Par contre quand je fais une boucle "for" afin de créer 2 ou 3 Thread et bien cela ne fonctionne pas.
Voici ma boucle for :
            for (int i = 0; i < maListeBoitier.Count;i++)
            {
                maListeThread.Add(new Thread(new ParameterizedThreadStart(this.creerTCPConnexion)));
                maListeThread.Last().Start(i);
            }
La boucle calcul bien qu'il doit y avoir 2 Threads de créer mais en faite lors du 1er passage dans la boucle un Thread est créé puis lancé, mais après être lancé, le programme se met en écoute du port TCP et comme c'est une boucle sans fin, il ne crée pas la seconde Thread donc je ne comprend pas.

Il devrait créé le Thread puis le lancer puis finir la boucle for, et une fois que la boucle est fini alors là il se met à écouter tout les ports grâce à la boucle non?

Est ce que quelqu'un peut m'aider SVP ???

Merci d'avance pour votre aide.

1 réponse

skyline86 Messages postés 29 Date d'inscription mardi 21 octobre 2008 Statut Membre Dernière intervention 5 décembre 2009 1
22 avril 2009 à 09:59
C'est bon j'ai trouvé mon erreur.

Je ne créé pas le Thread au bon moment. Il faut le créer au début de la méthode que l'on veut exécuter et non pas lors de l'appelle de cette fonction.

Merci encore
3
Rejoignez-nous