J'utilise Python 2.5 et j'essaie d'utiliser un excepthook
auto-défini dans mon programme. Dans le fil principal cela fonctionne parfaitement bien. Mais dans un fil commencé avec le module de filetage, le excepthook
habituel est appelé.'sys.excepthook' et le filetage
Voici un exemple montrant le problème. Décommenter le commentaire montre le comportement souhaité.
import threading, sys
def myexcepthook(type, value, tb):
print 'myexcepthook'
class A(threading.Thread, object):
def __init__(self):
threading.Thread.__init__(self, verbose=True)
# raise Exception('in main')
self.start()
def run(self):
print 'A'
raise Exception('in thread')
if __name__ == "__main__":
sys.excepthook = myexcepthook
A()
Alors, comment puis-je utiliser mon propre excepthook
dans un fil?
Merci - la troisième solution de contournement fonctionne parfaitement! – Sebastian