0
我有一個線程,每發送一個定時器到期時發送udp數據包。定時器間隔爲20秒。我將超時信號連接到send_data函數。在函數中,我正在做一些工作併發送數據包在函數中,我還添加了一個定時器來知道函數消耗了多少時間。Udp寫入QT定時器信號的數據報
QTimer timer;
timer.setInterval(20);
connect(timer,signal(timeout()),slot(send_data());
send_data(){
QElapsedTimer t;
t.start();
mysocket.writedatagram();//Do some work and send data via Udp
cout<<t.elapsed()<<endl;
}
我打印所經過的時間,時間爲7毫秒,有時我認爲這是正常的,但有時卻是0自帶我weird.I認爲這是發送與UDP數據包的問題,該函數沒有及時返回?可能是什麼問題?
我假設你的意思是你在'send_data'中使用了'QElapsedTimer'?另外,你可以發佈'send_data'的主體嗎?我們無法解釋沒有它的結果。 –
@RA謝謝。我編輯。 – barp