diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-07-11 07:33:08 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-07-11 07:33:08 +0200 |
commit | 621f4acf1406e51eaf5d9429c46625e6f5fde98e (patch) | |
tree | 0fe1fd92a0502602f54b2bf12a8c247ef575d00f /lib/spdlog/details/null_mutex.h | |
parent | 25d4e8d5ee396a852568b7ae1c15971a9da409db (diff) | |
parent | 5aa4b715375b173e9c24363f977883786b05cd6d (diff) |
Merge branch 'release/debian/2.0.0-1'debian/2.0.0-1
Diffstat (limited to 'lib/spdlog/details/null_mutex.h')
-rw-r--r-- | lib/spdlog/details/null_mutex.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lib/spdlog/details/null_mutex.h b/lib/spdlog/details/null_mutex.h new file mode 100644 index 0000000..3f495bd --- /dev/null +++ b/lib/spdlog/details/null_mutex.h @@ -0,0 +1,45 @@ +// +// Copyright(c) 2015 Gabi Melman. +// Distributed under the MIT License (http://opensource.org/licenses/MIT) +// + +#pragma once + +#include <atomic> +// null, no cost dummy "mutex" and dummy "atomic" int + +namespace spdlog { +namespace details { +struct null_mutex +{ + void lock() {} + void unlock() {} + bool try_lock() + { + return true; + } +}; + +struct null_atomic_int +{ + int value; + null_atomic_int() = default; + + explicit null_atomic_int(int val) + : value(val) + { + } + + int load(std::memory_order) const + { + return value; + } + + void store(int val) + { + value = val; + } +}; + +} // namespace details +} // namespace spdlog |