On Sun, 23 Apr 2006, Tino Dai wrote:
> I am wondering if you could lock a specific variable with thread > locking. Let me illustrate: > > def ftpQueuePut(filename=""):: > if len(filename) > 0: > try: > fileQueue.put(filename,True,1) #Variable that I would like to > lock > except Queue.full: > print "Queue is full" > else: > pass > > def ftpQueueGet(): > try: > filename=fileQueue.get(True,1) #Variable that I would like to > lock > return filename > except Queue.Empty: > pass Hi Tino, I'm not quite sure I get it, but ok. *grin* I'll assume that fileQueue is an instance of the Queue class: http://www.python.org/doc/lib/module-Queue.html If so: why not allow fileQueue to grow unbounded? > Presently, the only way that I can see to do this using Python is to > combine the two functions into one and lock and unlock the entire thing > . That doesn't seem efficient and/or elegant to me. Any pointers about > this? Do you know about the thread-locking primitives? There are a few kinds provided by Python's threading module: http://www.python.org/doc/lib/module-threading.html Are you already familiar with the concept of a RLock or a Lock? _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor