Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lancer plusieurs Threads en même temps.

Sujet résolu
    22 septembre 2011 à 13:38:14

    Bonjour tout le monde :D

    Je suis entrain de créé un programme pour récupéré des infos sur tous les films que contient un site internet. Pour ce faire, j'ai une classe RecupInfo qui s'occupe de lire le code HTML d'une page (au hasard pour le moment) et qui récupère les informations dans un tableau.

    Seulement, j'aimerais bien pouvoir utiliser les Threads pour qu'il y en ai 5, par exemple, qui tournent en parallèle. Pour que mon code soit le plus générique possible (et pour pouvoir lancer plus de threads en changeant juste une variable), j'utilise ce code :

    //Création du tableau qui va contenir un certain nombre de Thread.
    RecupInfo[] tab = new RecupInfo[nombreDeThread] ;
    		
    //Le tableau est rempli par x instances des Threads RecupInfo
    for (int i = 0 ; i < tab.length ; i ++)
    {
    	tab[i] = new RecupInfo() ;
    }
    
    //Tous les Threads sont 'sensés' se lancer directement, presque en même temps.
    for (int i = 0 ; i < length ; i ++)
    {
    	tab[i].run() ;
    }
    


    Malheureusement, la deuxième boucle attend que le processus précédant soit mort pour en lancer un nouveau. Je ne comprend pas pourquoi :-°

    Vous pouvez m'éclairer ? :p
    • Partager sur Facebook
    • Partager sur Twitter
      22 septembre 2011 à 14:19:56

      Salut.

      C'est parce que tu utilise la méhtode run.
      Il faut utiliser la méthode start.
      • Partager sur Facebook
      • Partager sur Twitter
        22 septembre 2011 à 14:37:23

        Ça fonctionne nickel ! Merci :D
        • Partager sur Facebook
        • Partager sur Twitter
          22 septembre 2011 à 16:36:09

          Pour info, la méthode start créer une nouvelle pile pour exécuté la méthode run.

          La méthode run en elle même n'a rien de particulier et s'exécute normalement.

          Si tout est bon, n'oublies pas de classer ton sujet en résolut. ;)
          • Partager sur Facebook
          • Partager sur Twitter

          Lancer plusieurs Threads en même temps.

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown