Lister les fichiers d'un répertoire et exécuter 3 threads

Signaler
Messages postés
41
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
7 décembre 2009
-
Messages postés
41
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
7 décembre 2009
-
Bonjour,

N'ayant rien trouver sur internet je fais appel à vos connaissances.

Voila je veux lister les fichiers d'un répertoire puis ensuite lancer une fonction via (éventuellement ou autre) un Thread, jusqu'à la ça va.

Mais je voudrais pouvoir exécuter 3 Thread simultanément.

Exemple :
Dim fichier As String
Dim files() As String

files = Directory.GetFiles(RepDezip, "*" & Contient & "*")

For Each fichier In files

   'Exécution du premier thread
   'Exécution du deuxième thread
   'Exécution du troisième thread

   'Exécuter le prochain Thread disponible
Next

'Attendre que les 3 threads soient terminé.


Merci de me dire si il existe un moyen de faire cela même si c'est avec autre classe que les Threads.

PS : Je travaille en VB.NET avec VS2008 Framework 3.5, même si la solution est en C#, je prend aussi.

Merci d'avance à tous ceux qui m'aideront.

2 réponses

Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
si ces process sont sensé s'exécuter conjointement, et sur le même ficher, c'est pas évident de mettre en place des threads...

je veux dire par là que le disque va passer son temps a lire manipuler on fichier, à divers endroits de celui-ci... le gain est pas évident

que souhaites tu faire faire à ces threads ?

Renfield - Admin CodeS-SourceS - MVP Visual Basic
Messages postés
41
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
7 décembre 2009

Actuellement, en faisant fichier par fichier, je copie le fichier sur un serveur linux via SCP et j'exécute un traitement via une commande ssh.

Et maintenant, pour augmenter la rapidité du traitement de mon coté étant donné que le serveur est très puissant, je voudrais faire 3 traitement en même temps. Sachant qu'aucun des fichiers n'écrit dans un fichier commun.

Donc, je voudrais savoir si, je pouvais le faire en passant par 3 threads différents ou autre que des threads, du moment que ce que je demande fonctionne.

En te remerciant d'avance pour ton aide.