From 423a63d0a9aaec793dd5b6df48e5e94a252d89cb Mon Sep 17 00:00:00 2001 From: Simon Date: Sun, 4 Sep 2016 08:12:46 -0700 Subject: [PATCH] Add shared queue to AsynRPCQueue. --- src/asyncrpcqueue.cpp | 9 +++++++++ src/asyncrpcqueue.h | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/asyncrpcqueue.cpp b/src/asyncrpcqueue.cpp index 385709a61..2febe0ce0 100644 --- a/src/asyncrpcqueue.cpp +++ b/src/asyncrpcqueue.cpp @@ -6,6 +6,15 @@ static std::atomic workerCounter(0); +/** + * Static method to return the shared/default queue. + */ +shared_ptr AsyncRPCQueue::sharedInstance() { + // Thread-safe in C+11 and gcc 4.3 + static shared_ptr q = std::make_shared(); + return q; +} + AsyncRPCQueue::AsyncRPCQueue() : closed_(false), finish_(false) { } diff --git a/src/asyncrpcqueue.h b/src/asyncrpcqueue.h index 837d4609a..1a099a263 100644 --- a/src/asyncrpcqueue.h +++ b/src/asyncrpcqueue.h @@ -24,6 +24,8 @@ typedef std::unordered_map sharedInstance(); + AsyncRPCQueue(); virtual ~AsyncRPCQueue();