romange / helio

A modern framework for backend development based on io_uring Linux interface
Apache License 2.0
447 stars 50 forks source link

chore: fibers improvements #180

Closed romange closed 11 months ago

romange commented 11 months ago

Simplify remote ready notifications flow. Also, hardened some invariants and added comments.

The main change is that I removed intrusive_ptr_add_ref call when adding a remote fiber to remote_ready queue. This can be done now because a fiber that is awaken, now explicitly removes itself from the remote_ready queue (using PullMyselfFromRemoteReadyQueue), so it can not terminate while its reference is still in the queue.

codecov-commenter commented 11 months ago

Codecov Report

Attention: 2 lines in your changes are missing coverage. Please review.

Comparison is base (1695b32) 78.64% compared to head (9999de1) 78.78%. Report is 1 commits behind head on master.

Files Patch % Lines
util/fibers/detail/scheduler.cc 71.42% 2 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #180 +/- ## ========================================== + Coverage 78.64% 78.78% +0.13% ========================================== Files 100 100 Lines 7311 7320 +9 ========================================== + Hits 5750 5767 +17 + Misses 1561 1553 -8 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.