Protocol for thread communication

castironpi at gmail.com castironpi at gmail.com
Thu Mar 6 17:31:47 EST 2008


> > Does anyone have any recommended ideas/ways of implementing a proper
> > control and status protocol for communicating with threads?  I have a
> > program that spawns a few worker threads, and I'd like a good, clean way
> > of communicating the status of these threads back to the main thread.
> > Each thread (wrapped in a very simple class) has only a few states, and
> > progress levels in those states.  And sometimes they can error out,
> > although if the main thread knew about it, it could ask the thread to
> > retry (start over).  How would any of you do this?  A callback method
> > that the thread can call (synchronizing one-way variables isn't a
> > problem)?  A queue?  How would the main thread check these things?
> > Currently the main thread is polling some simple status variables.  This
> > works, and polling will likely continue to be the simplest and easiest
> > way, but simple status variables are very limited.  Are there any
> > pythonic patterns people have developed for this.

There is the PyThreadState_SetAsyncExc API.  "To prevent naive misuse,
you must write your own C extension to call this."



More information about the Python-list mailing list