Wake ``n`` waiters.
(self, n: int = 1)
| 139 | return waiter |
| 140 | |
| 141 | def notify(self, n: int = 1) -> None: |
| 142 | """Wake ``n`` waiters.""" |
| 143 | waiters = [] # Waiters we plan to run right now. |
| 144 | while n and self._waiters: |
| 145 | waiter = self._waiters.popleft() |
| 146 | if not waiter.done(): # Might have timed out. |
| 147 | n -= 1 |
| 148 | waiters.append(waiter) |
| 149 | |
| 150 | for waiter in waiters: |
| 151 | future_set_result_unless_cancelled(waiter, True) |
| 152 | |
| 153 | def notify_all(self) -> None: |
| 154 | """Wake all waiters.""" |