Accueil > > > TRAITER UN FOREACH EN PARALLÈLE
TRAITER UN FOREACH EN PARALLÈLE
Information sur la source
Description
Faire des boucles ForEach, c'est pratique. Mais si on a beaucoup d'éléments à traiter, pourquoi ne pas répartir la charge sur tous les processeurs du système ? Ce petit bout de code permet d'exécuter du code sur chaque élément d'une collection, en parallèle sur chaque processeur du système.
Source
- //On a une collection d'objets
- IEnumerable<MaClass> collection;
-
- //L'action à réaliser
- Action<MaClass> action = delegate(MaClass item)
- {
- Console.WriteLine(item.ToString());
- }
-
- //L'appel de la boucle
- try
- {
- Parallel.ForEach<MaClass>(collection, action);
- }
- catch(ParallelException ex)
- {
- //On peut récupérer pour chaque item l'exception dans son traitement
- // via ex.Exceptions
- }
//On a une collection d'objets
IEnumerable<MaClass> collection;
//L'action à réaliser
Action<MaClass> action = delegate(MaClass item)
{
Console.WriteLine(item.ToString());
}
//L'appel de la boucle
try
{
Parallel.ForEach<MaClass>(collection, action);
}
catch(ParallelException ex)
{
//On peut récupérer pour chaque item l'exception dans son traitement
// via ex.Exceptions
}
Conclusion
C'est un peu un clone de Microsoft Parallel Extensions, mais le but était didactique, et aussi parce que je n'ai pas de dépendance au framework 3.0.
Historique
- 29 décembre 2008 16:39:37 :
- Source d'exemple
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
"sauter par dessus" un foreach?? [ par immerczeck ]
Bonjour!j'ai de nouveau un petit problème, mais j'avoue, celui-là, je sais plus quoi faire : est ce qu'il pourrait y avoir une raison pour q
Stopper une boucle [ par Yxion ]
Salut, Je suis assez novice dans le sujet, mais j'ai cherché hier toute la journée et j'ai rien trouvé. Voila mon pb :J'ai boucle qui peut etr
sortir d'une boucle foreach [ par yohan49 ]
jsute une kestion toute beteje cherche comment on sort d'une boucleen vb.net : exit foren C# : ????
Lancement et Création de Thread [ par skyline86 ]
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 é
Thread boucle [ par fredspv ]
Bonjour,Je parcours une listbox contenant des fichiers,à l'aide d'une boucle for, pour faire du publipostage avec Word. J'ai un bouton qui p
Pb Boucle Infini!!!!!!!!!!! [ par yanis7518 ]
Salutvoila j'ai 2 dossier qui sont alimenté en permanence en fichier txtle but de mon appli est de tourner en boucle et de traiter les fich
actualisation de la form a partir d'un thread. [ par bwoufy82 ]
Bonjour a tous.Voiladepuis 3 jours je n arrive pas a trouver comment faire pour que mon thread accede a ma form.J'esxplique se que je cherche a faire
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
Thread time [ par SfyLer ]
Bonjour à tous, j'ai un petit problème pour mettre à jour l'heure dans mon IHM mais je ne comprend pas d'oû sa peux venir:  
Cross-Threading -> Exception [ par sebseb42 ]
salut a tousvoila mon probleme est simple, dans ma classe principal, je lance un thread, et dans ce thread j'essaye de modifier un controle.ca fonctio
|
Derniers Blogs
[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|