mirror of
https://github.com/esphome/esphome.git
synced 2026-09-15 00:58:40 +00:00
0fb534bb2847ab21f466c7e86a1974554220e3ff
Two optimizations to reduce overhead in the scheduler hot path: 1. Skip cancel_item_locked_ entirely for anonymous items (STATIC_STRING with nullptr name) in set_timer_common_. These can never match any existing item, so the scan is pure waste. This is the common path for Component::defer(func). 2. Split mark_matching_items_removed_locked_ into an inline wrapper that checks for empty containers and a noinline slow path. This avoids the function call overhead when containers are empty, which is the common case for defer_queue_ and to_add_ after draining.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
604 MiB
Languages
C++
55.8%
Python
43.6%
C
0.3%
JavaScript
0.2%
