1
我寫了一個Qt應用程序,可用於qt事件,如QTimer,QTcpSocket等。當程序有延遲時會發生問題。我想知道哪些事件會造成這種延遲!如何逐一處理Qt事件?
要做到這一點,我想處理所有的事件,一個接一個,也獲得了處理這些事件相應的對象,最後,我想事件的類型!
在此先感謝。
我寫了一個Qt應用程序,可用於qt事件,如QTimer,QTcpSocket等。當程序有延遲時會發生問題。我想知道哪些事件會造成這種延遲!如何逐一處理Qt事件?
要做到這一點,我想處理所有的事件,一個接一個,也獲得了處理這些事件相應的對象,最後,我想事件的類型!
在此先感謝。
QTimer,QTcpSocket等不完全是事件,這些類在與主線程不同的線程中執行它們的處理。如果你需要更多的解釋讓我知道。
爲了不讓他們同時運行,這是東西,你可以這樣開始:
QThread *Thread = new QThread();
QTimer * T = new QTimer();
T->setInterval(1000);
T->moveToThread(Thread);
T->start();
// After some checkings
QTcpSocket *socket = new QTcpSocket();
socket->moveToThread(Thread);
// And so on ...
你能不能解釋一下?你究竟如何使用它們? –