Commit e56eb71
committed
Fix timerfd handling in epoll reactor
- Consume timerfd on expiry to prevent epoll busy-spinning
(level-triggered fd must be read to clear readable state)
- Remove last_timerfd_expiry_ caching optimization to match Asio
(eliminates data race between timer callback and reactor thread)1 parent f689216 commit e56eb71
2 files changed
Lines changed: 2 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
588 | 588 | | |
589 | 589 | | |
590 | 590 | | |
591 | | - | |
592 | | - | |
593 | | - | |
594 | | - | |
595 | | - | |
596 | | - | |
597 | 591 | | |
598 | 592 | | |
599 | 593 | | |
| |||
659 | 653 | | |
660 | 654 | | |
661 | 655 | | |
| 656 | + | |
| 657 | + | |
662 | 658 | | |
663 | 659 | | |
664 | 660 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
167 | 167 | | |
168 | 168 | | |
169 | 169 | | |
170 | | - | |
171 | | - | |
172 | 170 | | |
173 | 171 | | |
174 | 172 | | |
| |||
0 commit comments