From 3afe38168c44b59f1732f2d55ec08b8f81d879bc Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期五, 17 七月 2020 11:54:08 +0800
Subject: [PATCH] commit -a
---
queue/include/shm_queue.h | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/queue/include/shm_queue.h b/queue/include/shm_queue.h
index 3a506c9..97eaa9e 100644
--- a/queue/include/shm_queue.h
+++ b/queue/include/shm_queue.h
@@ -6,6 +6,7 @@
#include "hashtable.h"
#include "lock_free_queue.h"
#include "logger_factory.h"
+#include "shm_allocator.h"
// default Queue size
// #define LOCK_FREE_Q_DEFAULT_SIZE 16
@@ -46,7 +47,7 @@
protected:
/// @brief the actual queue-> methods are forwarded into the real
/// implementation
- LockFreeQueue<ELEM_T>* queue;
+ LockFreeQueue<ELEM_T, SHM_Allocator>* queue;
private:
/// @brief disable copy constructor declaring it private
@@ -60,18 +61,18 @@
hashtable_t *hashtable = mm_get_hashtable();
std::set<int>* keyset = hashtable_keyset(hashtable);
std::set<int>::iterator keyItr;
- LockFreeQueue<ELEM_T>* mqueue;
+ LockFreeQueue<ELEM_T, SHM_Allocator>* mqueue;
bool found;
for (keyItr = keyset->begin(); keyItr != keyset->end(); keyItr++) {
found = false;
- for(int i = 0; i < length; i++) {
+ for(size_t i = 0; i < length; i++) {
if(*keyItr == keys[i]) {
found = true;
break;
}
}
if(!found) {
- mqueue = (LockFreeQueue<ELEM_T> *)hashtable_get(hashtable, *keyItr);
+ mqueue = (LockFreeQueue<ELEM_T, SHM_Allocator> *)hashtable_get(hashtable, *keyItr);
delete mqueue;
}
}
@@ -84,10 +85,10 @@
{
hashtable_t *hashtable = mm_get_hashtable();
- queue = (LockFreeQueue<ELEM_T> *)hashtable_get(hashtable, key);
+ queue = (LockFreeQueue<ELEM_T, SHM_Allocator> *)hashtable_get(hashtable, key);
//LockFreeQueue<int, 10000> q;
if (queue == NULL || (void *)queue == (void *)1) {
- queue = new LockFreeQueue<ELEM_T>(qsize);
+ queue = new LockFreeQueue<ELEM_T, SHM_Allocator>(qsize);
hashtable_put(hashtable, key, (void *)queue);
}
queue->reference++;
--
Gitblit v1.8.0