xref: /src/contrib/jemalloc/include/jemalloc/internal/activity_callback.h (revision c43cad87172039ccf38172129c79755ea79e6102)
1 #ifndef JEMALLOC_INTERNAL_ACTIVITY_CALLBACK_H
2 #define JEMALLOC_INTERNAL_ACTIVITY_CALLBACK_H
3 
4 /*
5  * The callback to be executed "periodically", in response to some amount of
6  * allocator activity.
7  *
8  * This callback need not be computing any sort of peak (although that's the
9  * intended first use case), but we drive it from the peak counter, so it's
10  * keeps things tidy to keep it here.
11  *
12  * The calls to this thunk get driven by the peak_event module.
13  */
14 #define ACTIVITY_CALLBACK_THUNK_INITIALIZER {NULL, NULL}
15 typedef void (*activity_callback_t)(void *uctx, uint64_t allocated,
16     uint64_t deallocated);
17 typedef struct activity_callback_thunk_s activity_callback_thunk_t;
18 struct activity_callback_thunk_s {
19 	activity_callback_t callback;
20 	void *uctx;
21 };
22 
23 #endif /* JEMALLOC_INTERNAL_ACTIVITY_CALLBACK_H */
24