Class ThreadScheduler (2.2.0)

ThreadScheduler(executor=None)

A thread pool-based scheduler. It must not be shared across SubscriberClients.

This scheduler is useful in typical I/O-bound message processing.

Parameter

NameDescription
executor concurrent.futures.ThreadPoolExecutor

An optional executor to use. If not specified, a default one will be created.

Inheritance

builtins.object > Scheduler > ThreadScheduler

Properties

queue

Queue: A thread-safe queue used for communication between callbacks and the scheduling thread.

Methods

schedule

schedule(callback, *args, **kwargs)

Schedule the callback to be called asynchronously in a thread pool.

Parameter
NameDescription
callback Callable

The function to call.

shutdown

shutdown()

Shuts down the scheduler and immediately end all pending callbacks.