Fonctions membres publiques | |
SerializeMessageList (IMessagePassingMng *mpm) | |
void | addMessage (ISerializeMessage *msg) override |
Ajoute un message à la liste. | |
void | processPendingMessages () override |
Envoie les messages de la liste qui ne l'ont pas encore été. | |
Integer | waitMessages (eWaitType wait_type) override |
Attend que les messages aient terminé leur exécution. | |
Ref< ISerializeMessage > | createAndAddMessage (MessageRank destination, ePointToPointMessageType type) override |
Créé et ajoute un message de sérialisation. | |
void | setAllowAnyRankReceive (bool v) |
![]() | |
virtual | ~ISerializeMessageList () |
Libère les ressources. | |
Définition à la ligne 39 du fichier SerializeMessageList.h.
Arcane::MessagePassing::internal::SerializeMessageList::SerializeMessageList | ( | IMessagePassingMng * | mpm | ) |
Définition à la ligne 33 du fichier SerializeMessageList.cc.
|
overridevirtual |
Ajoute un message à la liste.
Le message n'est pas posté tant qu'aucun appel à processPendingMessages() n'a été effectué. L'utilisateur garde la propriété du message qui ne doit pas être détruit tant qu'il n'est pas terminé.
Implémente Arcane::MessagePassing::ISerializeMessageList.
Définition à la ligne 44 du fichier SerializeMessageList.cc.
Référencé par createAndAddMessage().
|
overridevirtual |
Créé et ajoute un message de sérialisation.
Le message peut être un message d'envoie ou de réception.
Si le message est de réception (MsgReceive), il est possible de spécifier un rang nul pour indiquer qu'on souhaite recevoir de n'importe qui.
Cette méthode appelle addMessage() pour ajouter automatiquement le message créé à la liste des messages. L'instance ne conserve pas de référence au message créé qui ne doit pas être détruit tant qu'il n'est pas terminé.
Implémente Arcane::MessagePassing::ISerializeMessageList.
Définition à la ligne 194 du fichier SerializeMessageList.cc.
Références addMessage().
|
overridevirtual |
Envoie les messages de la liste qui ne l'ont pas encore été.
Cette méthode envoie les messages ajoutés via addMessage() qui ne l'ont pas encore été. Il n'est en général pas nécessaire d'appeler cette méthode car cele est fait automatiquement lors de l'appel à waitMessages().
Implémente Arcane::MessagePassing::ISerializeMessageList.
Définition à la ligne 56 du fichier SerializeMessageList.cc.
Référencé par waitMessages().
|
inline |
Définition à la ligne 68 du fichier SerializeMessageList.h.
|
overridevirtual |
Attend que les messages aient terminé leur exécution.
Le type d'attente est spécifié par wt.
Il est ensuite possible de tester si un message est terminé via la méthode ISerializeMessage::isFinished(). Cette classe ne garde aucune référence sur les messages terminés qui peuvent donc être détruits par l'utilisateur dès qu'il n'en a plus besoin.
Implémente Arcane::MessagePassing::ISerializeMessageList.
Définition à la ligne 76 du fichier SerializeMessageList.cc.
Références processPendingMessages().