re-entrancy question

Tim Golden tim.golden at viacom-outdoor.co.uk
Tue Feb 8 07:57:44 EST 2005


| Tim Golden <tim.golden at viacom-outdoor.co.uk> wrote:
| 
| > No doubt there are more pertinent answers, but unless this is
| > a learning exercise, you'd be better off investigating Pyro:
| > http://pyro.sf.net
| 
| AFAIK pyro is just a RPC implementation for python whereas 
| Twisted is a
| completely different beast that happens to have its own implementation
| of RPC.
| 
| How would the OP be better investigating something different, that he
| probably doesn't even need?
| 
| Your comment would be pertinent only if it considered 
| Perspective Broker
| against pyro, and I admit I don't know how they compare.


Here's the original post, quoted in its entirety:

<quote>
I have a program that instantiates some objects and runs a main loop. 
Before the main loop starts, I create a thread that listens to TCP 
connections on a port.  If any connections are made, and depending on 
the data, I call methods on some of those objects.

I am worried that calling methods on objects from outside the main loop, 
but that are also operated on in the main loop, could cause problems.

My questions:
1) is this safe?
2) what kind of problems could occur?
3) how do I safely handle this?
</quote>

Now *where* is there any mention of Twisted, either in the original
post or in my reply? As I read it, the OP is doing something which
creates local objects (instances, whatever) and has them available
remotely. He's then -- justifiably -- concerned about possible
re-entrancy if more than one outside agent makes a connection on
his TCP port.

It seemed to me that this was -- approximately -- what Pyro does:
you created objects locally and listen on a TCP port for incoming
requests. Since Pyro's author has already solved a number of the
problems associated with doing this kind of thing, I thought it
might be helpful to point this out.

Tim

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________



More information about the Python-list mailing list