Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::SequentialSection

Section de code à exécuter séquentiellement. Plus de détails...

#include <arcane/core/SequentialSection.h>

+ Graphe de collaboration de Arcane::SequentialSection:

Fonctions membres publiques

 SequentialSection (IParallelMng *)
 
 SequentialSection (ISubDomain *)
 
void setError (bool is_error)
 

Description détaillée

Section de code à exécuter séquentiellement.

Une instance de cette classe permet à une partie du code de s'exécuter un peu comme si le code était séquentiel. Le code compris dans la durée de vie de cet objet est d'abord exécuté sur le proc 0, puis si tout est ok sur les autres. Cela permet lorsque le code exécuter est le même partout (par exemple la lecture du jeu de données) de le vérifier une fois et en cas d'erreur d'afficher une seule fois les messages.

Comme les erreurs éventuelles ne sont affichées que par un seul sous-domaine, cette classe ne doit être utilisée que lorsqu'on est certain que tout les sous-domaines font le même traitement faute de quoi les erreurs ne seront pas reconnues.

De plus, comme tous les sous-domaines bloquent tant que le premier sous-domaine n'a pas fini d'exécuter le code, il faut ne faut pas faire d'appel au gestionnaire de parallélisme dans cette partie.

En cas d'erreur, une exception de type ExParallelFatalError est envoyée dans le destructeur.

{
... // Code exécuté séquentiellement.
ss.setError(true);
}
Section de code à exécuter séquentiellement.

Définition à la ligne 64 du fichier SequentialSection.h.

Documentation des constructeurs et destructeur

◆ SequentialSection() [1/2]

Arcane::SequentialSection::SequentialSection ( IParallelMng pm)

Définition à la ligne 31 du fichier SequentialSection.cc.

◆ SequentialSection() [2/2]

Arcane::SequentialSection::SequentialSection ( ISubDomain sd)

Définition à la ligne 42 du fichier SequentialSection.cc.

◆ ~SequentialSection()

Arcane::SequentialSection::~SequentialSection ( )

Définition à la ligne 53 du fichier SequentialSection.cc.

Documentation des fonctions membres

◆ setError()

void Arcane::SequentialSection::setError ( bool  is_error)

Définition à la ligne 107 du fichier SequentialSection.cc.


La documentation de cette classe a été générée à partir des fichiers suivants :