diff options
author | Lioncash <mathew1800@gmail.com> | 2019-02-12 22:12:23 -0500 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2019-02-12 22:39:53 -0500 |
commit | 0829ef97cac6cb96c49d1401433d9f46639bfeb8 (patch) | |
tree | 4001843b442ce4066635537596213a9e16aaefad /src/common/threadsafe_queue.h | |
parent | f0bfb24c61ceb61b621ba38bcc1a1aa020a9d397 (diff) |
threadsafe_queue: Use std::size_t for representing size
Makes it consistent with the regular standard containers in terms of
size representation. This also gets rid of dependence on our own
type aliases, removing the need for an include.
Diffstat (limited to 'src/common/threadsafe_queue.h')
-rw-r--r-- | src/common/threadsafe_queue.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/common/threadsafe_queue.h b/src/common/threadsafe_queue.h index 2660b118a0..f553efdc9a 100644 --- a/src/common/threadsafe_queue.h +++ b/src/common/threadsafe_queue.h @@ -7,11 +7,10 @@ // a simple lockless thread-safe, // single reader, single writer queue -#include <algorithm> #include <atomic> #include <cstddef> #include <mutex> -#include "common/common_types.h" +#include <utility> namespace Common { template <typename T> @@ -25,7 +24,7 @@ public: delete read_ptr; } - u32 Size() const { + std::size_t Size() const { return size.load(); } @@ -87,7 +86,7 @@ private: // and a pointer to the next ElementPtr class ElementPtr { public: - ElementPtr() : next(nullptr) {} + ElementPtr() {} ~ElementPtr() { ElementPtr* next_ptr = next.load(); @@ -96,12 +95,12 @@ private: } T current; - std::atomic<ElementPtr*> next; + std::atomic<ElementPtr*> next{nullptr}; }; ElementPtr* write_ptr; ElementPtr* read_ptr; - std::atomic<u32> size{0}; + std::atomic_size_t size{0}; }; // a simple thread-safe, @@ -110,7 +109,7 @@ private: template <typename T> class MPSCQueue { public: - u32 Size() const { + std::size_t Size() const { return spsc_queue.Size(); } |