Message306142
When shutdown the manager, Server's handle_request will send back message to the manager, so is useless for the Server's shutdown method send back "None" to the manager?
Source code from Lib/multiprocessing/managers.py:
def shutdown(self, c):
'''
Shutdown this process
'''
try:
util.debug('manager received shutdown message')
# Is useless here?
c.send(('#RETURN', None))
except:
import traceback
traceback.print_exc()
finally:
self.stop_event.set()
Server's handle_request may throw and catch exception because the conn is closed in _finalize_manager() after Server's shutdown method returns.
code from handle_request():
try:
c.send(msg)
except Exception as e:
try:
c.send(('#TRACEBACK', format_exc()))
except Exception:
pass
code from _finalize_manager():
try:
conn = _Client(address, authkey=authkey)
try:
dispatch(conn, None, 'shutdown')
finally:
conn.close()
except Exception:
pass
Also the Server's shutdown method only used by manager class. |
|
| Date |
User |
Action |
Args |
| 2017-11-13 06:00:30 | stevezh | set | recipients:
+ stevezh, pitrou, jnoller, sbt, davin |
| 2017-11-13 06:00:30 | stevezh | set | messageid: <1510552830.41.0.213398074469.issue32014@psf.upfronthosting.co.za> |
| 2017-11-13 06:00:30 | stevezh | link | issue32014 messages |
| 2017-11-13 06:00:29 | stevezh | create | |
|