(self, fd)
| 294 | return handle |
| 295 | |
| 296 | def _remove_reader(self, fd): |
| 297 | if self.is_closed(): |
| 298 | return False |
| 299 | key = self._selector.get_map().get(fd) |
| 300 | if key is None: |
| 301 | return False |
| 302 | mask, (reader, writer) = key.events, key.data |
| 303 | mask &= ~selectors.EVENT_READ |
| 304 | if not mask: |
| 305 | self._selector.unregister(fd) |
| 306 | else: |
| 307 | self._selector.modify(fd, mask, (None, writer)) |
| 308 | |
| 309 | if reader is not None: |
| 310 | reader.cancel() |
| 311 | return True |
| 312 | else: |
| 313 | return False |
| 314 | |
| 315 | def _add_writer(self, fd, callback, *args, context=None): |
| 316 | self._check_closed() |
no test coverage detected