class documentation

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.
Instance Variable _coordinator Undocumented
Instance Variable _failTest Undocumented
Instance Variable _newWorker Undocumented

Inherited from ThreadPool:

Method __getstate__ Undocumented
Method __setstate__ Undocumented
Method adjustPoolsize Adjust the number of available threads by setting min and max to new values.
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 dumpStats Dump some plain-text informational messages to the log about the state of this ThreadPool.
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 stop Shutdown the threads in the threadpool.
Method stopAWorker Decrease the number of available workers by 1, by quitting one as soon as it's idle.
Class Variable currentThread Undocumented
Instance Variable joined Undocumented
Instance Variable max Undocumented
Instance Variable min Undocumented
Instance Variable name Undocumented
Instance Variable started Whether or not the thread pool is currently running.
Instance Variable threads List of workers currently running in this thread pool.
Property waiters For legacy compatibility purposes, return the number of idle workers as expressed by a list the length of that number.
Property workers For legacy compatibility purposes, return a total number of workers.
Property working For legacy compatibility purposes, return the number of busy workers as expressed by a list the length of that number.
Method _generateName Generate a name for a new pool thread.
Instance Variable _team Undocumented
Property _queue For legacy compatibility purposes, return an object with a qsize method that indicates the amount of work not yet allocated to a worker.
def __init__(self, coordinator, failTest, newWorker, *args, **kwargs):

Initialize this MemoryPool with a test case.

Parameters
coordinator:twisted._threads.IExclusiveWorkera worker used to coordinate work in the Team underlying this threadpool.
failTest:1-argument callable taking (Failure) and raising unittest.FailTest.A 1-argument callable taking an exception and raising a test-failure exception.
newWorker:0-argument callable returning twisted._threads.IWorker.a 0-argument callable that produces a new twisted._threads.IWorker provider on each invocation.
*argsUndocumented
**kwargsUndocumented
def _pool(self, currentLimit, threadFactory):

Override testing hook to create a deterministic threadpool.

Parameters
currentLimitA 1-argument callable which returns the current threadpool size limit.
threadFactoryignored in this invocation; a 0-argument callable that would produce a thread.
Returns
a Team backed by the coordinator and worker passed to MemoryPool.__init__.
_coordinator =

Undocumented

_failTest =

Undocumented

_newWorker =

Undocumented