Hi, If you want a QThread to handle something Q related like, events or Queued SLOTS, you need to start an event loop. This is what you need: http://qt-project.org/doc/qt-4.8/QEventLoop.html But I don't know why did it hang your UI because that depends on how did you call your SLOT.
BTW a few years ago I wrote a very small library that made handling multiple event loops and moving QObjects between threads. If you are interested I can go and find it. :) Cheers, Tibold On 2012-10-16 15:15, Sensei wrote: > Hi! I am in the middle of a crisis, since I thought I understood > threads, but I might be wrong! > > This is quite easy: I want to start a thread that never ends. > > Once in a while, when the GUI needs it, it will "wake the thread up", > and run a method of my QThread subclass, in my case, a "find in files" > or "rename all files", or any other method. > > I thought I could simply make run() be an infinite loop, sleeping for a > long period (one day). > > I was wrong: I hang my GUI. > > > What are your recommendations? This is what I intended: > > > class ScanFiles : public QThread > { > public: > > ScanFiles(QObject *parent = 0) : QThread(parent) { }; > > // This should run endlessly, until the parent dies > void run() > { > qWarning("starting scanning thread."); > > // Where does this fit? > exec(); > > while (1) > { > qWarning("sleeping now..."); > // Snore for one day, now 5 secs just for debugging > sleep(5); > } > }; > > public slots: > > // Here I will place the methods that should be run by the thread > QString search(const QStringList &files); > }; > > > > > Now, I think my question is quite easy, for someone who understands > QThreads... but I'm a complete newbie here :) > > > Thanks & Cheers! > > > > > > > _______________________________________________ > Interest mailing list > Interest@qt-project.org > http://lists.qt-project.org/mailman/listinfo/interest -- Tibold Kandrai CEO @ Dotz Team _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest