Skip to main content

declare_jemalloc_conf

Macro declare_jemalloc_conf 

Source
macro_rules! declare_jemalloc_conf {
    () => { ... };
}
Expand description

re-export of declare_jemalloc_conf!, kept behind jemalloc-metrics (rather than always available) so an app depending on micromegas only for TelemetryGuardBuilder doesn’t find a server-tuned allocator conf in its API surface. See mkdocs/docs/admin/memory-allocator.md. Declares the _rjem_malloc_conf symbol jemalloc’s conf.c resolves at precedence 1 (weaker than _RJEM_MALLOC_CONF, stronger than the compile-time --with-malloc-conf default), pointing it at CONF.

Must be invoked from a binary crate, immediately below its #[global_allocator] static: jemalloc’s C code defines _rjem_malloc_conf as a weak definition, so nothing forces the linker to pull our override out of an rlib – only a binary’s own object files are always linked in full. $crate (rather than a bare CONF) is required because this macro expands inside each calling binary crate, not inside telemetry-sink.