What does update() from the thread do? If it operates on some Qt widget, then you just found your problem - you can't access the gui from within worker threads.