12#ifndef ARCANE_PARALLEL_THREAD_ISHAREDMEMORYMESSAGEQUEUE_H
13#define ARCANE_PARALLEL_THREAD_ISHAREDMEMORYMESSAGEQUEUE_H
17#include "arcane/utils/MemoryView.h"
19#include "arcane/parallel/thread/ArcaneThread.h"
20#include "arcane/Parallel.h"
22#include "arcane/ArcaneTypes.h"
31using ByteSpan = Arccore::ByteSpan;
32using ByteConstSpan = Arccore::ByteConstSpan;
41class ARCANE_THREAD_EXPORT SendBufferInfo
44 SendBufferInfo() =
default;
46 : m_memory_buffer(memory_buffer){}
48 : m_serializer(serializer){}
50 ByteConstSpan memoryBuffer() {
return m_memory_buffer.bytes(); }
51 const ISerializer* serializer() {
return m_serializer; }
65class ARCANE_THREAD_EXPORT ReceiveBufferInfo
68 ReceiveBufferInfo() =
default;
70 : m_memory_buffer(memory_buffer){}
72 : m_serializer(serializer){}
74 ByteSpan memoryBuffer() {
return m_memory_buffer.bytes(); }
100 virtual void init(
Integer nb_thread) =0;
Déclarations des types de la composante 'base' de Arccore.
Vue modifiable d'un tableau d'un type T.
Vue constante sur une zone mémoire contigue contenant des éléments de taille fixe.
Interface d'un sérialiseur.
Interface du gestionnaire de traces.
Interface d'un créateur de requête.
Interface d'une file de messages avec les threads.
Informations sur la source d'un message.
Informations pour envoyer/recevoir un message point à point.
Informations des buffers de réception.
Informations des buffers d'envoie.
Vue modifiable sur une zone mémoire contigue contenant des éléments de taille fixe.
Déclarations des types et méthodes utilisés par les mécanismes d'échange de messages.
Int32 Integer
Type représentant un entier.
std::int32_t Int32
Type entier signé sur 32 bits.