Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

46 lines (32 sloc) 1.737 kB

tornado.platform.twisted --- Run code written for Twisted on Tornado

This module contains a Twisted reactor build on the Tornado IOLoop, which lets you run applications and libraries written for Twisted in a Tornado application. To use it, simply call install at the beginning of the application:

import tornado.platform.twisted
tornado.platform.twisted.install()
from twisted.internet import reactor

When the app is ready to start, call IOLoop.instance().start() instead of reactor.run(). This will allow you to use a mixture of Twisted and Tornado code in the same process.

It is also possible to create a non-global reactor by calling tornado.platform.twisted.TornadoReactor(io_loop). However, if the IOLoop and reactor are to be short-lived (such as those used in unit tests), additional cleanup may be required. Specifically, it is recommended to call:

reactor.fireSystemEvent('shutdown')
reactor.disconnectAll()

before closing the IOLoop.

This module has been tested with Twisted versions 11.0.0 and 11.1.0.

Install this package as the default Twisted reactor.

Twisted reactor built on the Tornado IOLoop.

Since it is intented to be used in applications where the top-level event loop is io_loop.start() rather than reactor.run(), it is implemented a little differently than other Twisted reactors. We override mainLoop instead of doIteration and must implement timed call functionality on top of IOLoop.add_timeout rather than using the implementation in PosixReactorBase.

Jump to Line
Something went wrong with that request. Please try again.