开发中我们可能会遇到接收的网络数据来不及显示的问题。最基础的做法是限制UI中加载的数据行数,这样一来可以防止内存一直涨,二来数据刷新非常快,加载再多也来不及看。此时UI能看到数据当前处理到什么阶段就行,实时性更加重要,要做数据分析的话还得查看日志文件。
这里给出UDP+QListView和TCP+QPlainTexEdit两种实现方案。Qt网络编程的基础知识详见:Qt基础之三十一:Qt网络编程(TCP&UDP)
一.UDP+QListView
Model/View的基础知识详见:Qt基础之六:Model/View架构
1.UDP Client
QUdpSocket udpSocket;
for(int i=0; i<1000000; i++)
{
QString data;
if(i==0)
{
data = QString("AAAAAAAAAAAAAAAAAAAA%1").arg(QStrin