def boot(self):
if not self.responsive:<EOL><INDENT>type(self)._ports[self.port_key] = self.port<EOL>init_func = capybara.servers[capybara.server_name]<EOL>init_args = (self.middleware, self.port, self.host)<EOL>self.server_thread = Thread(target=init_func, args=init_args)<EOL>self.server_thread.daemon = True<EOL>self.server_thread.start()<EOL>timer = Timer(<NUM_LIT>)<EOL>while not self.responsive:<EOL><INDENT>if timer.expired:<EOL><INDENT>raise RuntimeError("<STR_LIT>")<EOL><DEDENT>self.server_thread.join(<NUM_LIT:0.1>)<EOL><DEDENT><DEDENT>return self<EOL>
Boots a server for the app, if it isn't already booted.

Returns:
    Server: This server.