#include <userver/components/manager_controller_component.hpp>
Component that prepares the engine internals and starts all the other components.
| Name | Description | Default value | 
|---|---|---|
| coro_pool.initial_size | amount of coroutines to preallocate on startup | 1000 | 
| coro_pool.max_size | max amount of coroutines to keep preallocated | 4000 | 
| coro_pool.stack_size | size of a single coroutine | 256 * 1024 | 
| event_thread_pool.threads | number of threads to process low level IO system calls (number of ev loops to start in libev) | 2 | 
| event_thread_pool.thread_name | set OS thread name to this value | 'event-worker' | 
| components | dictionary of "component name": "options" | - | 
| default_task_processor | name of the default task processor to use in components | - | 
| task_processors.*NAME*.*OPTIONS* | dictionary of task processors to create and their options. See description below | - | 
| mlock_debug_info | whether to mlock(2) process debug info to prevent major page faults on unwinding | true | 
| disable_phdr_cache | whether to disable caching of phdr_info objects. Usable if rebuilding with cmake variable USERVER_DISABLE_PHDR_CACHE is off limits, and has the same effect | false | 
| preheat_stacktrace_collector | whether to collect a dummy stacktrace at server start up (usable to avoid loading debug info at random point at runtime) | true | 
| Name | Description | Default value | 
|---|---|---|
| guess-cpu-limit | guess optimal threads count | false | 
| thread_name | set OS thread name to this value | Part of the task_processor name before the first '-' symbol with '-worker' appended; for example 'fs-worker' or 'main-worker' | 
| worker_threads | threads count for the task processor | - | 
| os-scheduling | OS scheduling mode for the task processor threads. 'idle' sets the lowest priority. 'low-priority' sets the priority below 'normal' but higher than 'idle'. | normal | 
| spinning-iterations | tunes the number of spin-wait iterations in case of an empty task queue before threads go to sleep | 1000 | 
| task-trace | optional dictionary of tracing options | empty (disabled) | 
| task-trace.every | set N to trace each Nth task | 1000 | 
| task-trace.max-context-switch-count | set upper limit of context switches to trace for a single task | 1000 | 
| task-trace.logger | required name of logger to write traces to, should not be the 'default' logger | - | 
Tips and tricks on task-trace usage are described in Profiling context switches.
Definition at line 66 of file manager_controller_component.hpp.
 Inheritance diagram for components::ManagerControllerComponent:
 Collaboration diagram for components::ManagerControllerComponent:Public Member Functions | |
| ManagerControllerComponent (const components::ComponentConfig &config, const components::ComponentContext &context) | |
Static Public Attributes | |
| static constexpr std::string_view | kName = "manager-controller" | 
| The default name of components::ManagerControllerComponent.   | |