我想做什么:
问题: 需要等待时间,否则数据发送太快,并且董事会无法一一处理消息。
我的代码段:
//class.cpp
while (!file.atEnd())
{
std::string str = file.readLine();
QString qstr = QString::fromStdString(str);
writeTextToMessageLog("PRINTF: " + qstr);
sendCommand(str, str.c_str(), str.size());
// THE STRAIGHTFORWARD WAY WITH SLEEP
Sleep(100);
}
void class::sendCommand(const std::string str, const char *buf, const int &size)
{
size_t bytes = boost::asio::write(m_portConfig, boost::asio::buffer(buf, size));
}
基本上就是这样。我使用SLEEP函数解决了该问题,但是我希望有一种更好的方法在硬件发送信号或某物后开始写新行。有这样的东西吗?