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();