title: Tornado: DummyFuture does not support blocking for results
body: <p>I am trying to get a very simple initial server which fetches a url (asynchronously) to work but it throws:</p>
  
  <pre><code>Exception: DummyFuture does not support blocking for results
  </code></pre>
  
  <p>There's this <a href="https://stackoverflow.com/questions/31172272/cant-call-result-on-futures-in-tornado">SO</a> post but the answers do not include running a web server and trying to add the future to my loop as shown <a href="https://stackoverflow.com/a/31172384/1252307">here</a> throws:</p>
  
  <pre><code>RuntimeError: IOLoop is already running
  </code></pre>
  
  <p>This is the complete code:</p>
  
  <pre><code>import tornado.web
  import tornado.gen
  from tornado.httpclient import AsyncHTTPClient
  from tornado.ioloop import IOLoop
  
  URL = 'http://stackoverflow.com'
  
  
  @tornado.gen.coroutine
  def fetch_coroutine(url):
      http_client = AsyncHTTPClient()
      response = yield http_client.fetch(url)
      raise tornado.gen.Return(response.body)  # Python2
  
  
  class MainHandler(tornado.web.RequestHandler):
      def get(self):
          self.write("Hello, world")
  
  
  class FetchSyncHandler(tornado.web.RequestHandler):
      def get(self):
          data = fetch_coroutine(URL)
          print type(data)  # &lt;class 'tornado.concurrent.Future'&gt;
          self.write(data.result())
  
  
  def make_app():
      return tornado.web.Application([
          (r"/", MainHandler),
          (r"/async", FetchSyncHandler),
      ])
  
  if __name__ == "__main__":
      app = make_app()
      app.listen(9999)
      print 'starting loop'
      IOLoop.current().start()
      print 'loop stopped'
  </code></pre>
  
  <p>The loop is running, a future is returned. What is the issue?</p>
  
  <p>Python <strong>2.7.10</strong><br>
  tornado==<strong>4.4.2</strong></p>