From 770ad3081077e3eb89885bc4d1b3b7d2f470a075 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期四, 04 二月 2021 16:54:51 +0800
Subject: [PATCH] update
---
src/shm/hashtable.h | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/shm/hashtable.h b/src/shm/hashtable.h
index ea4dc64..47b715b 100755
--- a/src/shm/hashtable.h
+++ b/src/shm/hashtable.h
@@ -5,15 +5,15 @@
#include <functional>
#include <set>
-#define MAPSIZE 100
+#define MAPSIZE 1024
typedef struct hashtable_t
{
struct tailq_header_t* array[MAPSIZE];
int mutex;
- int wlock;
- int cond;
- size_t readcnt;
+ // int wlock;
+ // int cond;
+ // size_t readcnt;
} hashtable_t;
typedef void (*hashtable_foreach_cb)(int key, void *value);
@@ -21,10 +21,14 @@
void hashtable_init(hashtable_t *hashtable);
void hashtable_destroy(hashtable_t *hashtable);
void *hashtable_get(hashtable_t *hashtable, int key);
-void hashtable_put(hashtable_t *hashtable, int key, void *value);
+void hashtable_put(hashtable_t *hashtable, int key, void *value) ;
+bool hashtable_check_put(hashtable_t *hashtable, int key, void *value, bool overwrite) ;
+
void *hashtable_remove(hashtable_t *hashtable, int key);
void hashtable_removeall(hashtable_t *hashtable);
+int hashtable_lock(hashtable_t *hashtable);
+int hashtable_unlock(hashtable_t *hashtable);
/**
* 閬嶅巻hash_table
* @demo
--
Gitblit v1.8.0