<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run(self):
 """ Tornado worker which handles HTTP requests. """

        setproctitle.setproctitle("{:s}: worker {:s}".format(
            self.context.config.name,
            self._tornado_app.settings['interface'].name))
        self.logger.info(
            "Worker '%s' has been started with pid %d",
            self._tornado_app.settings['interface'].name, os.getpid())

        # Configure logging
        self.context.config.configure_logging()
        # Create HTTP server instance
        self.http_server = tornado.httpserver.HTTPServer(self._tornado_app)
        # Initialize child
        self.context.initialize_child(TORNADO_WORKER, process=self)

        # Register SIGINT handler which will stop worker
        def sigint_handler(unused_signum, unused_frame):
            """
            Call :meth:`stop` method when SIGINT is reached.
            """
            io_loop = tornado.ioloop.IOLoop.instance()
            io_loop.add_callback_from_signal(self.stop)
        signal.signal(signal.SIGINT, sigint_handler)

        # Register callback which is called when IOLoop is started
        def run_ioloop_callback():
            """
            Set ready flag. Callback is called when worker is started.
            """
            self._ready.value = True
        tornado.ioloop.IOLoop.instance().add_callback(run_ioloop_callback)

        # Register job which will stop worker if parent process PID is changed
        def check_parent_callback():
            """
            Tornado's callback function which checks PID of the parent
            process. If PID of the parent process is changed (parent has
            stopped), call :meth:`stop` method.
            """
            if os.getppid() != self._parent_pid:
                self.stop()
        stop_callback = tornado.ioloop.PeriodicCallback(
            check_parent_callback, 250)
        stop_callback.start()

        # Run HTTP server
        self.http_server.add_sockets(self._sockets)
        # Run IOLoop
        tornado.ioloop.IOLoop.instance().start()