Exécuter N actions en parallèle avec TParallel TParallel Tâche asynchrone:exécuter N actions en parallèle

1. Présentation

La classe TParallel permet d’exécuter N actions en parallèle et deux cas de figure se présentent. Soit l’utilisateur veut exécuter N fois la même action et il faudra alors utiliser la méthode statique TParallel.For, ou bien il s’agira d’exécuter différentes actions et on utilisera TParallel.Join.

2. Exécution de la même action en parallèle TParallel.For TParallel.For

Exemple

Dans N fichiers, on veut trouver le nombre de fois qu’un mot est contenu. Il s’agit bien d’un cas d’application de TParallel.For. On va demander d’exécuter pour N fichiers différents la recherche de la chaîne de caractères désirée.

L’implémentation se présente comme suit au niveau de la déclaration :

type TPositionResultList = class(TList<Int64>) 
  public 
    FileName:string; 
end; 
 
type 
 TForm2 = class(TForm) 
   btnSearch: TButton; 
   Memo1: TMemo; 
   Label1: TLabel; 
   procedure btnSearchClick(Sender: TObject); 
   procedure FormCreate(Sender: TObject); 
 private 
   { Private declarations } 
 public 
   { Public declarations } 
   FLog:TLog; ...
Pour consulter la suite, découvrez le livre suivant :
couv_RIDELPH.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Synchronisation de deux threads grâce à l'appel Future
Suivant
Recommandations