12#ifndef ARCCORE_CONCURRENCY_CONCURRENCYGLOBAL_H
13#define ARCCORE_CONCURRENCY_CONCURRENCYGLOBAL_H
22#if defined(ARCCORE_COMPONENT_arccore_concurrency)
23#define ARCCORE_CONCURRENCY_EXPORT ARCCORE_EXPORT
24#define ARCCORE_CONCURRENCY_EXTERN_TPL
26#define ARCCORE_CONCURRENCY_EXPORT ARCCORE_IMPORT
27#define ARCCORE_CONCURRENCY_EXTERN_TPL extern
43class TaskFactoryInternal;
71namespace Arcane::Concurrency
77extern "C++" ARCCORE_CONCURRENCY_EXPORT IThreadImplementation*
78getThreadImplementation();
79extern "C++" ARCCORE_CONCURRENCY_EXPORT IThreadImplementation*
80setThreadImplementation(IThreadImplementation* impl);
85extern "C++" ARCCORE_CONCURRENCY_EXPORT Ref<IThreadImplementation>
86createGlibThreadImplementation();
88extern "C++" ARCCORE_CONCURRENCY_EXPORT Ref<IThreadImplementation>
89createStdThreadImplementation();
91extern "C++" ARCCORE_CONCURRENCY_EXPORT Ref<IThreadImplementation>
92createNullThreadImplementation();
108using Arcane::GlibThreadImplementation;
109using Arcane::GlobalMutex;
110using Arcane::IThreadBarrier;
111using Arcane::IThreadImplementation;
113using Arcane::MutexImpl;
114using Arcane::NullThreadBarrier;
115using Arcane::NullThreadImplementation;
116using Arcane::SpinLock;
117using Arcane::SpinLockImpl;
118using Arcane::ThreadImpl;
128namespace Arccore::Concurrency
130using Arcane::Concurrency::getThreadImplementation;
131using Arcane::Concurrency::setThreadImplementation;
132using Arcane::Concurrency::createGlibThreadImplementation;
133using Arcane::Concurrency::createStdThreadImplementation;
134using Arcane::Concurrency::createNullThreadImplementation;
#define ARCCORE_DECLARE_REFERENCE_COUNTED_CLASS(class_name)
Macro pour déclarer qu'une classe utilise un compteur de référence.
Implémentation de ITreadImplementation avec la 'Glib'.
Interface d'une tâche concourante.
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.
Caractéristiques d'un boucle 1D multi-thread.
Contexte d'éxecution d'une tâche.
Fabrique pour les tâches.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Espace de nom de Arccore.