[[TracNav(TracNavTOC)]]

{{{
#!html
<h2>
<span style="font-size:x-large; color:#600000;">Twisted-Goodies:</span>
&nbsp;
<span style="font-style:oblique;">Add-ons and improvements to the Twisted&trade; framework</span>
</h2>
}}}

= Asynchronous Task Queue ==

The {{{twisted_goodies.taskqueue}}} subpackage provides a {{{TaskQueue}}}
object and support staff for running tasks through a queue with a powerful
system of task prioritization and management.

The
[http://foss.eepatents.com/api/twisted-goodies/taskqueue.__init__.TaskQueue.html TaskQueue]
object accepts new tasks for queuing via its {{{call}}} method and
dispatches the tasks to be run by one or more worker objects.  You can
construct the task queue with one or more workers, or you can attach them later
with its {{{attachWorker}}} method.

All of a task queue's workers must provide the
[http://foss.eepatents.com/api/twisted-goodies/taskqueue.workers.IWorker.html IWorker]
interface. The package comes with two worker implementations,
[http://foss.eepatents.com/api/twisted-goodies/taskqueue.workers.ThreadWorker.html ThreadWorker]
for threaded calls and
[http://foss.eepatents.com/api/twisted-goodies/taskqueue.workers.CallRemoteWorker.html CallRemoteWorker]
for remote calls via Twisted's Perspective Broker.


