Я запустил более простую версию вашего кода и вижу трассировку стека помимо сообщения Unhandled Exception.Это должно помочь вам найти проблему.
Есть несколько улучшений, которые вы должны рассмотреть.Прежде всего, есть библиотека высокого уровня threading
, которая рекомендуется более thread
.Во-вторых, вы делаете занятое ожидание с циклом while 1
!Использование join()
намного предпочтительнее.И обычно это также помогает разместить обработчик исключений вокруг вашего рабочего кода.Например,
import threading
import time
import traceback
def worker():
try:
for i in range(5):
print i
time.sleep(0.5)
assert 0, 'bad'
except:
traceback.print_exc()
t = threading.Thread(target=worker)
t.start()
t.join()
print 'completed'