def _run(self, thread_n):
try:<EOL><INDENT>logger.debug("<STR_LIT>"<EOL>.format(self, thread_n))<EOL>resolver = self._make_resolver()<EOL>while True:<EOL><INDENT>request = self.queue.get()<EOL>if request is None:<EOL><INDENT>break<EOL><DEDENT>method, args = request<EOL>logger.debug("<STR_LIT>"<EOL>.format(resolver, method, args))<EOL>getattr(resolver, method)(*args) <EOL>self.queue.task_done()<EOL><DEDENT>logger.debug("<STR_LIT>"<EOL>.format(self, thread_n))<EOL><DEDENT>finally:<EOL><INDENT>self.threads.remove(threading.currentThread())<EOL><DEDENT>
The thread function.