(self)
| 99 | |
| 100 | @contextlib.contextmanager |
| 101 | def lock(self) -> Generator[collections.deque[Item]]: |
| 102 | with self._lock: |
| 103 | try: |
| 104 | yield self._items |
| 105 | finally: |
| 106 | if self._items: |
| 107 | self._has_items_event.set() |
| 108 | else: |
| 109 | self._has_items_event.clear() |
| 110 | |
| 111 | |
| 112 | class WorkerInteractor: |