init_resource_manager

Function init_resource_manager 

Source
pub fn init_resource_manager(config: ResourceConfig) -> Result<(), String>
Expand description

Initialize the global resource manager with custom configuration

§Educational: Explicit Initialization Pattern

This must be called exactly once, early in main(), before any code accesses RESOURCE_MANAGER. Subsequent calls will return an error.

§Why This Pattern?

  • Allows CLI flags to configure resource limits
  • Makes initialization explicit and debuggable
  • Avoids “lazy initialization with hidden defaults”
  • Better testability (each test can configure differently)

§Errors

Returns error if:

  • Already initialized (called twice)
  • Configuration is invalid (e.g., 0 CPU threads)