executing multiple functions in background simultaneously

Cameron Simpson cs at zip.com.au
Thu Jan 15 01:00:23 CET 2009


On 14Jan2009 15:50, Catherine Moroney <Catherine.M.Moroney at jpl.nasa.gov> wrote:
> James Mills wrote:
>> On Wed, Jan 14, 2009 at 11:02 AM, Catherine Moroney
>> <Catherine.M.Moroney at jpl.nasa.gov> wrote:
>>> I would like to spawn off multiple instances of a function
>>> and run them simultaneously and then wait until they all complete.
[...]
>> Try using the python standard threading module.
>> Create multiple instances of Thread with target=your_function
>> Maintain a list of these new Thread instnaces
>> Join (wait) on them.
>
> What is the proper syntax to use if I wish to return variables
> from a function run as a thread?

The easy thing is to use a Queue object. The background thread uses
.put() to place a computed result on the QUeue and the caller uses
.get() to read from the queue. There's an assortment of other ways too.

Cheers,
-- 
Cameron Simpson <cs at zip.com.au> DoD#743
http://www.cskk.ezoshosting.com/cs/



More information about the Python-list mailing list