2017-03-08 8 views
0

私は、ロボットに参照データを書き込むためにQUdpSocketを使用しています。 私は、送信が可能な限りリアルタイムになることを願っています。qt udpsocketをフラッシュするのが便利ですか?

if (dataBuffer.count() > 0) 
{ 
    int numWritten = udp_socket->writeDatagram(dataBuffer.left(64), t_host, t_port); 
    if (numWritten > 0) { dataBuffer.remove(0, numWritten); } 
} 

タイマーが50Hzの時上記のコードをトリガされます。ここで は、私が今やっているものです。 この場合、writeDatagramコールの後にflushを呼び出す必要がありますか?

答えて

-1

システムによって異なります。しかし、flushを使ってできるだけ早く書き込むようにすることができます。 waitForBytesWritten()を使用するシステムでは十分です。

0

いいえ、flush()に電話する必要はありません。 writeDatagramメソッドには瞬間的な効果があります。使用しているタイマーがQt::PreciseTimerであることを確認してください。

関連する問題