(self)
| 173 | |
| 174 | @overrides(PyDBDaemonThread.do_kill_pydev_thread) |
| 175 | def do_kill_pydev_thread(self): |
| 176 | PyDBDaemonThread.do_kill_pydev_thread(self) |
| 177 | # Note that we no longer shutdown the reader, just the writer. The idea is that we shutdown |
| 178 | # the writer to send that the communication has finished, then, the client will shutdown its |
| 179 | # own writer when it receives an empty read, at which point this reader will also shutdown. |
| 180 | |
| 181 | # That way, we can *almost* guarantee that all messages have been properly sent -- it's not |
| 182 | # completely guaranteed because it's possible that the process exits before the whole |
| 183 | # message was sent as having this thread alive won't stop the process from exiting -- we |
| 184 | # have a timeout when exiting the process waiting for this thread to finish -- see: |
| 185 | # PyDB.dispose_and_kill_all_pydevd_threads()). |
| 186 | |
| 187 | # try: |
| 188 | # self.sock.shutdown(SHUT_RD) |
| 189 | # except: |
| 190 | # pass |
| 191 | # try: |
| 192 | # self.sock.close() |
| 193 | # except: |
| 194 | # pass |
| 195 | |
| 196 | def _read(self, size): |
| 197 | while True: |
no outgoing calls
no test coverage detected