[RFC 1/3] [gdb/dap] Fix exit race
Tom Tromey
tom@tromey.com
Tue Feb 13 18:04:03 GMT 2024
>>>>> "Tom" == Tom de Vries <tdevries@suse.de> writes:
>> One way to fix this would be to have start_json_writer return the
>> thread
>> object, and then have main_loop join the thread to terminate after
>> writing the None. This would mean making this particular thread
>> non-daemon though.
Tom> And as I understand it, the downside of that is that it could possibly
Tom> hang the gdb process.
How so?
Tom> + queue.task_done()
I think SimpleQueue doesn't have task_done, so you have to change this
code to use Queue and instead.
Tom> # JSON-writing thread, so that we can ensure that all
Tom> # responses are flushed to the client before exiting.
Tom> self.write_queue.put(None)
Tom> + self.write_queue.join()
Tom> + send_gdb("quit")
I suspect this isn't needed.
Tom
More information about the Gdb-patches
mailing list