12#ifndef ARCCORE_CONCURRENCY_NULLTHREADIMPLEMENTATION_H
13#define ARCCORE_CONCURRENCY_NULLTHREADIMPLEMENTATION_H
17#include "arccore/concurrency/IThreadBarrier.h"
18#include "arccore/concurrency/IThreadImplementation.h"
37 void destroy()
override {
delete this; }
38 bool wait()
override {
return true; }
58 void _internalAddReference()
override
61 Arccore::ReferenceCounterImpl::_internalAddReference();
63 bool _internalRemoveReference()
override
66 return Arccore::ReferenceCounterImpl::_internalRemoveReference();
72 void addReference()
override { _internalAddReference(); }
73 void removeReference()
override { _internalRemoveReference(); }
77 ARCCORE_DEPRECATED_REASON(
"Y2023: This constructor is internal to Arcane. Use Concurrency::createNullThreadImplementation() instead")
84 void initialize()
override {}
104 MutexImpl* createMutex()
override {
return nullptr; }
105 void destroyMutex(
MutexImpl*)
override {}
109 Int64 currentThread()
override {
return 0; }
124 bool m_do_destroy =
true;
Interface d'une barrière entre threads.
Interface d'un service implémentant le support des threads.
Implémentation d'une barrière en mono-thread.
Implémentation des threads en mode mono-thread.
bool isMultiThread() const override
Vrai si l'implémentation supporte plusieurs threads.
Référence à une instance.
Implémentation thread-safe d'un compteur de référence.
Espace de nom de Arccore.
Int32 Integer
Type représentant un entier.
std::int64_t Int64
Type entier signé sur 64 bits.