pitrou commented on code in PR #13516:
URL: https://github.com/apache/arrow/pull/13516#discussion_r972782721


##########
cpp/src/arrow/memory_pool.h:
##########
@@ -175,6 +177,31 @@ ARROW_EXPORT Status jemalloc_memory_pool(MemoryPool** out);
 ARROW_EXPORT
 Status jemalloc_set_decay_ms(int ms);
 
+/// \brief Get basic statistics from jemalloc's mallctl.
+/// See the MALLCTL NAMESPACE section in jemalloc project documentation for
+/// available stats.
+ARROW_EXPORT
+Result<uint64_t> jemalloc_get_stat(const char* name);
+
+/// \brief Reset the counter for peak bytes allocated in the calling thread to 
zero.
+/// This affects subsequent calls to thread.peak.read, but not the values 
returned by
+/// thread.allocated or thread.deallocated.
+ARROW_EXPORT
+Status jemalloc_peak_reset();
+
+/// \brief Print summary statistics in human-readable form to stderr.
+/// See malloc_stats_print documentation in jemalloc project documentation for
+/// available opt flags.
+ARROW_EXPORT
+Status jemalloc_stats_print(std::function<void(void*, const char*)>* write_cb,
+                            void* cbopaque, const char* opts = "");

Review Comment:
   So this should probably be:
   ```c++
   Status jemalloc_stats_print(std::function<void(const char*)> write_cb, const 
char* opts = "");
   ```
   (or perhaps keep passing `write_cb` as a pointer, which feels less idiomatic 
but can avoid a move/copy)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to