A deterministic threadpool that uses in-memory data structures to queue work rather than threads to execute work.

Method __init__ Initialize this MemoryPool with a test case.
Method _pool Override testing hook to create a deterministic threadpool.

Inherited from ThreadPool:

Instance Variable started Whether or not the thread pool is currently running. (type: bool)
Instance Variable threads List of workers currently running in this thread pool. (type: list)
Method workers For legacy compatibility purposes, return a total number of workers.
Method working For legacy compatibility purposes, return the number of busy workers as expressed by a list the length of that number.
Method waiters For legacy compatibility purposes, return the number of idle workers as expressed by a list the length of that number.
Method start Start the threadpool.
Method startAWorker Increase the number of available workers for the thread pool by 1, up to the maximum allowed by ThreadPool.max.
Method stopAWorker Decrease the number of available workers by 1, by quitting one as soon as it's idle.
Method __setstate__ Undocumented
Method __getstate__ Undocumented
Method callInThread Call a callable object in a separate thread.
Method callInThreadWithCallback Call a callable object in a separate thread and call onResult with the return value, or a twisted.python.failure.Failure if the callable raises an exception.
Method stop Shutdown the threads in the threadpool.
Method adjustPoolsize Adjust the number of available threads by setting min and max to new values.
Method dumpStats Dump some plain-text informational messages to the log about the state of this ThreadPool.
Method _queue For legacy compatibility purposes, return an object with a qsize method that indicates the amount of work not yet allocated to a worker.
Method _generateName Generate a name for a new pool thread.
def __init__(self, coordinator, failTest, newWorker, *args, **kwargs):

Initialize this MemoryPool with a test case.

Parameterscoordinatora worker used to coordinate work in the Team underlying this threadpool. (type: twisted._threads.IExclusiveWorker)
failTestA 1-argument callable taking an exception and raising a test-failure exception. (type: 1-argument callable taking (Failure) and raising unittest.FailTest.)
newWorkera 0-argument callable that produces a new twisted._threads.IWorker provider on each invocation. (type: 0-argument callable returning twisted._threads.IWorker.)
def _pool(self, currentLimit, threadFactory):

Override testing hook to create a deterministic threadpool.

ParameterscurrentLimitA 1-argument callable which returns the current threadpool size limit.
threadFactoryignored in this invocation; a 0-argument callable that would produce a thread.
Returnsa Team backed by the coordinator and worker passed to MemoryPool.__init__.
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.