Coroutines and concurrency Coroutines and concurrency Coroutines and concurrency Coroutines and concurrency tornado.gen — Generator-based coroutines Decorators coroutine() Return Utility functions with_timeout() sleep() WaitIterator WaitIterator.done() WaitIterator.next() multi() multi_future() convert_yielded() maybe_future() is_coroutine_function() moment tornado.locks – Synchronization primitives Condition Condition Condition.wait() Condition.notify() Condition.notify_all() Event Event Event.is_set() Event.set() Event.clear() Event.wait() Semaphore Semaphore Semaphore.release() Semaphore.acquire() BoundedSemaphore BoundedSemaphore BoundedSemaphore.release() BoundedSemaphore.acquire() Lock Lock Lock.acquire() Lock.release() tornado.queues – Queues for coroutines Classes Queue Queue Queue.maxsize Queue.qsize() Queue.put() Queue.put_nowait() Queue.get() Queue.get_nowait() Queue.task_done() Queue.join() PriorityQueue PriorityQueue LifoQueue LifoQueue Exceptions QueueEmpty QueueEmpty QueueFull QueueFull tornado.process — Utilities for multiple processes CalledProcessError cpu_count() fork_processes() task_id() Subprocess Subprocess.set_exit_callback() Subprocess.wait_for_exit() Subprocess.initialize() Subprocess.uninitialize()