terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc
[attachment=16263] [attachment=16264]
这是在使用QUdpSocket进行大量数据传输时,运行大概三十分钟后出现的错误。求助大神们原因。
QUdpSocket是在主窗口类的构造函数中new的,然后连接信号readyRead(),和读取数据的槽函数。在槽函数中一直用m_pUdpSocket->hasPendingDatagrams()来监听和读取数据。但是过一段时间会出现监听不到数据,不知为什么,然后解决办法是加了一个定时器,每当监听不到数据时m_pUdpSocket->bytesAvailable()!=0,,就重新new QUdpSocket,重新connnect的。在new之前m_pUdpSocket->close();代码大概就是这样写的。请问为什么会报内存异常的错误。
[attachment=16262]