Corrutinas C++: Una Inmersión Profunda en la Personalización
2025-07-13
Las corrutinas C++ no son una biblioteca lista para usar como `std::vector`; son una especificación que define puntos de personalización que requieren implementación por parte de los escritores de bibliotecas. Extendiendo el concepto de función, admiten operaciones de suspensión, reanudación y destrucción. La palabra clave `co_await` marca una corrutina, y `Task::promise_type` personaliza el comportamiento en los puntos de llamada, retorno, suspensión y reanudación. Los mecanismos `awaiter` y `awaitable` manejan la suspensión y la reanudación, permitiendo la reanudación cuando las dependencias están listas, proporcionando programación asincrónica flexible.
Desarrollo