def quit(self):
if self._process is None:<EOL><INDENT>logger.debug('<STR_LIT>')<EOL>return<EOL><DEDENT>try:<EOL><INDENT>logger.debug('<STR_LIT>')<EOL>process_group_id = os.getpgid(self._process.pid)<EOL>os.killpg(process_group_id, signal.SIGTERM)<EOL>logger.debug('<STR_LIT>' % process_group_id)<EOL>self._process_monitor.join()<EOL><DEDENT>except OSError:<EOL><INDENT>logger.error('<STR_LIT>')<EOL><DEDENT>self._process = None<EOL>
Quit the player, blocking until the process has died