executing multiple functions in background simultaneously

Catherine Moroney Catherine.M.Moroney at jpl.nasa.gov
Wed Jan 14 20:11:44 EST 2009


Cameron Simpson wrote:
> 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,

Thank you for this hint.  This goes a long way to solving
my problem.

One question - is there any way to name the objects that get
put on a queue?  For my application, it's important to know
which thread put a particular item on the queue.

Catherine



More information about the Python-list mailing list