Просмотр исходного кода

Add a quick macro to calculate hashtable memory usage

Nick Mathewson 17 лет назад
Родитель
Сommit
793e97bb2a
1 измененных файлов с 4 добавлено и 0 удалено
  1. 4 0
      src/common/ht.h

+ 4 - 0
src/common/ht.h

@@ -42,6 +42,10 @@
 #define HT_SIZE(head)                           \
   ((head)->hth_n_entries)
 
+/* Return memory usage for a hashtable (not counting the entries themselves) */
+#define HT_MEM_USAGE(head)                         \
+  (sizeof(*head) + (head)->hth_table_length * sizeof(void*))
+
 #define HT_FIND(name, head, elm)     name##_HT_FIND((head), (elm))
 #define HT_INSERT(name, head, elm)   name##_HT_INSERT((head), (elm))
 #define HT_REPLACE(name, head, elm)  name##_HT_REPLACE((head), (elm))