Class ThreadScheduler (2.10.0)

ThreadScheduler(
    executor: Optional[concurrent.futures.thread.ThreadPoolExecutor] = None,
)

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

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

Properties

queue

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

Methods

schedule

schedule(callback: Callable, *args, **kwargs)

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

shutdown

shutdown(await_msg_callbacks: bool = False)

Shut down the scheduler and immediately end all pending callbacks.