(self)
| 82 | self._has_items_event = execmodel.Event() |
| 83 | |
| 84 | def get(self) -> Item: |
| 85 | while True: |
| 86 | with self.lock() as locked_items: |
| 87 | if locked_items: |
| 88 | return locked_items.popleft() |
| 89 | |
| 90 | self._has_items_event.wait() |
| 91 | |
| 92 | def put(self, item: Item) -> None: |
| 93 | with self.lock() as locked_items: |