Kaydet (Commit) 4cab2cd0 authored tarafından Victor Stinner's avatar Victor Stinner Kaydeden (comit) GitHub

bpo-31238: pydoc ServerThread.stop() now joins itself (#3151)

* bpo-31238: pydoc ServerThread.stop() now joins itself

ServerThread.stop() now joins itself to wait until
DocServer.serve_until_quit() completes and then explicitly sets
its docserver attribute to None to break a reference cycle.

* Add NEWS.d entry
üst 489d91c6
......@@ -2297,6 +2297,10 @@ def _start_server(urlhandler, port):
def stop(self):
"""Stop the server and this thread nicely"""
self.docserver.quit = True
self.join()
# explicitly break a reference cycle: DocServer.callback
# has indirectly a reference to ServerThread.
self.docserver = None
self.serving = False
self.url = None
......
pydoc: the stop() method of the private ServerThread class now waits until
DocServer.serve_until_quit() completes and then explicitly sets its
docserver attribute to None to break a reference cycle.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment