like clear_current, but for the global IOLoop instance
use getattr to check for close method in IOLoop.close
instead of catching AttributeError directly
try close method to close FDs in IOLoop
If an object has a `close` method, use that first,
then fallback on `os.close`.
This is useful in subclasses that support polling things (zmq sockets, specifically)
that are not simple FDs (and Jython, I hear?).
use '%s' formatting instead of '%d' for fds in IOLoop log messages
In case some poller implementations accept sockets or values other than
integer file descriptors, this prevents tornado's log messages from
fix milliseconds -> seconds typo
in ioloop, a variable was called milliseconds, but its units were seconds,
which is confusing.