(self)
| 114 | self._lock = threading.Lock() |
| 115 | |
| 116 | def _read(self): |
| 117 | count = 0 |
| 118 | while count < 10: |
| 119 | count += 1 |
| 120 | try: |
| 121 | datagram = self._socket.recv(QUIC_MAX_DATAGRAM) |
| 122 | except BlockingIOError: |
| 123 | return |
| 124 | with self._lock: |
| 125 | self._connection.receive_datagram(datagram, self._peer, time.time()) |
| 126 | |
| 127 | def _drain_wakeup(self): |
| 128 | while True: |