FastCaloSim/Transport/ThreadLocalHolder.h file

Defines template helper classes for thread-local storage.

Contents

The helpers here provide an implementation of thread-local storage which allows for non-static dynamic memory management as well as element iteration. This extra functionality makes these containers much slower than the builtin thread_local and should only be used when needed.

Namespaces

namespace thread_utils

Classes

template<class T>
class thread_utils::ThreadLocalHolder
A thread-local storage wrapper.
template<class T>
class thread_utils::ThreadLocalOwner
A ThreadLocalHolder which owns its objects.