QTreewidget安插大量数据会崩溃?

QTreewidget插入大量数据会崩溃???
QTreeWidget一共5列, 插入了2000多条*项目, 都没有子项目.内存占用就跑到了200多M, 这正常吗?
这样下去的话, x86程序最多能占用2G虚拟内存, 那不是2万多条数据后就没法再添加了?

实际测试插入了10000条, 程序自己退出了...
QTreeWidget有这样弱吗, 还是我的操作不对?
我是桌面程序, 不是手机应用.为啥论坛的Qt版块被分到了移动平台下...

const char CONN_NAME[] = "DBCONN_LOADALLWORKERS";
{
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC", CONN_NAME);
Utils::setDatabaseInfo(db);
if( db.open() )
{
QSqlQuery qry(db);
if( qry.exec("select id, usr, score, stat, login from " tbl_worker ";") )
{
while(qry.next())
{
QTreeWidgetItem* pItem = new QTreeWidgetItem(ui.treeWidgetWorker);
int usrId = qry.value(0).toInt();
pItem->setData(0, Qt::UserRole, usrId);
pItem->setText(0, QString("%1").arg(usrId));
pItem->setText(1, qry.value(1).toString());
pItem->setText(2, QString("%1").arg(qry.value(2).toInt()));
int stat = qry.value(3).toInt();
pItem->setText(3, Utils::getName_USR_STAT( USR_STAT(stat) ));
time_t login = qry.value(4).toInt();
pItem->setText(4, QDateTime::fromTime_t(login).toString(NORMAL_DATETIME_FMT));
}
qry.clear();
}
db.close();
}else{
AddLog(tr("载入工人列表失败!"), LC_RED, TRUE);
}
}
QSqlDatabase::removeDatabase(CONN_NAME); //若上面不放在花括号里, QSqlDatabase就不会析构, 这里就会出现警告, 搞不懂Qt为啥这样设计
Qt

------解决方案--------------------
还是QTreeView性能好些,1万条很快。
QTreeWidget是QTreeView的便于使用版本。
------解决方案--------------------
引用:
还是QTreeView性能好些,1万条很快。
QTreeWidget是QTreeView的便于使用版本。

++