lovely.remotetask available for Zope 2.9/2.10
lovely.remotetask is a zope3 package for running asynchronous tasks. A service is running as a separate thread (not using any of zope's own threads). You define a class that performs a task. The task can be executed by adding it to the service (which adds it to its queue). It can look like this:
>>> service = getUtility(ITaskService, name='LongRunningJob')
>>> service.add(u'exampletask', 'input to the task')
The service will execute the task as soon as the other tasks in the queue are completed. The service and the task are registered as named utilities in zcml.
lovely.remotetask is ported to Zope 2.9 and works on 2.10 as well. It depends on zc.queue which runs on 2.9/2.10 without modification. The code is found in zope svn
The zmi (managing services and tasks) is not ported, but there is an example in svn that tells how to do it programmatically. Removing tasks can already be done in zmi as the utilities are added to the utilities folder in the site root.
Headnet sponsored this work.