'Returns a global `IOLoop` instance.
Most applications have a single, global `IOLoop` running on the
main thread.  Use this method to get this instance from
another thread.  In most other cases, it is better to use `current()`
to get the current thread\'s `IOLoop`.'

@staticmethod
def instance():

    if (not hasattr(IOLoop, '_instance')):
        with IOLoop._instance_lock:
            if (not hasattr(IOLoop, '_instance')):
                IOLoop._instance = IOLoop()
    return IOLoop._instance
