comparison mercurial/worker.py @ 38740:c08ea1e219c0 stable

worker: call selector.close() to release polling resources
author Yuya Nishihara <yuya@tcha.org>
date Thu, 19 Jul 2018 21:36:24 +0900
parents ef3838a47503
children 909c31805f54 03f7d0822ec1
comparison
equal deleted inserted replaced
38739:7acec9408e1c 38740:c08ea1e219c0
210 selector.register(os.fdopen(rfd, r'rb', 0), selectors.EVENT_READ) 210 selector.register(os.fdopen(rfd, r'rb', 0), selectors.EVENT_READ)
211 def cleanup(): 211 def cleanup():
212 signal.signal(signal.SIGINT, oldhandler) 212 signal.signal(signal.SIGINT, oldhandler)
213 waitforworkers() 213 waitforworkers()
214 signal.signal(signal.SIGCHLD, oldchldhandler) 214 signal.signal(signal.SIGCHLD, oldchldhandler)
215 selector.close()
215 status = problem[0] 216 status = problem[0]
216 if status: 217 if status:
217 if status < 0: 218 if status < 0:
218 os.kill(os.getpid(), -status) 219 os.kill(os.getpid(), -status)
219 sys.exit(status) 220 sys.exit(status)