Given this class below:
import Queue
import threading
from sorb.util.dumpexc import dumpexc
import waitablemixin
PREFETCH_SIZE = 10
class Feeder(threading.Thread,waitablemixin.WaitableMixin):
def __init__(self,connection_manager):
self.cm = connection_manager
En Tue, 24 Feb 2009 09:22:41 -0200, Laszlo Nagy gand...@shopzeus.com
escribió:
Given this class below:
[code removed]
It seems impossible to me. The while loop should only exit if
stop_requested becomes set, OR if an exception is raised. However, all
exceptions are cought and logged.
I assume stop_requested is an Event object. Maybe other thread cleared
it?
It was never set! - nothing can clear it.
--
http://mail.python.org/mailman/listinfo/python-list
I assume stop_requested is an Event object. Maybe other thread
cleared it?
It was never set! - nothing can clear it.
In theory, it could be that a thread sets the event object. E.g.:
#1. other thread calls stop_requested.set()
#2. while not self.stop_requested.isSet() -- loop exists
#3.
It seems impossible to me. The while loop should only exit if
stop_requested becomes set, OR if an exception is raised. However, all
exceptions are cought and logged. But there are no exceptions logged.
And stop_requested is NOT SET. (see the last line in the log).
What is happening here?
Laszlo Nagy wrote:
I assume stop_requested is an Event object. Maybe other thread
cleared it?
It was never set! - nothing can clear it.
In theory, it could be that a thread sets the event object. E.g.:
#1. other thread calls stop_requested.set()
#2. while not
En Tue, 24 Feb 2009 11:09:44 -0200, Laszlo Nagy gand...@shopzeus.com
escribió:
It seems impossible to me. The while loop should only exit if
stop_requested becomes set, OR if an exception is raised. However, all
exceptions are cought and logged. But there are no exceptions logged.
And
On 2009-02-24, Steve Holden st...@holdenweb.com wrote:
However, this cannot happen. This application is running
multiple threads (10+) and every thread monitors the global
stop_requested flag. If there was an unexpected error in the
service, stop_requested.set() is called. It will stop all
Use this instead:
import sys
try:
???
except:
e = sys.exc_value
do_with(e)
Only at the outermost block on your code, if ever... The fact that
some exceptions don't inherit from Exception is on purpose -- usually
you *dont* want to catch (and swallow) SystemExit (nor
2009/2/24 Grant Edwards inva...@invalid:
It works with a person as well as stuffed toys -- but trying to
order a person on the internet gets you in a lot more trouble.
It's also a little more embarassing when you realize your
mistake in front of a person. OTOH, sometimes a person will
ask
10 matches
Mail list logo