| 155 | } |
| 156 | |
| 157 | void Remove(IPollEvent* event) noexcept { |
| 158 | auto* lst = Lists_.Get(event->Fd()); |
| 159 | const ui16 oldFlags = Flags(*lst); |
| 160 | event->Unlink(); |
| 161 | ui16 newFlags = Flags(*lst); |
| 162 | |
| 163 | if (newFlags != oldFlags) { |
| 164 | if (newFlags) { |
| 165 | newFlags |= CONT_POLL_MODIFY; |
| 166 | } |
| 167 | |
| 168 | P_->Set(lst, event->Fd(), newFlags); |
| 169 | } |
| 170 | } |
| 171 | |
| 172 | void Wait(TEvents& events, TInstant deadLine) { |
| 173 | events.clear(); |