Qt无法分配高内存

时间:2014-01-06 12:02:34

标签: qt windows-7

我使用Qt写一个FTP应用程序,每当我使用一个小文件...它工作正常,但当我使用大文件大小(200 MB)Qt崩溃显示消息

“无法分配405769344个字节 此应用程序已请求Runtime以不寻常的方式终止它。 有关更多信息,请联系应用程序的支持团队。 QObject :: killTimers:无法从另一个线程停止计时器。“

Qt需要进行哪些更改才能在Windows 7上支持大内存分配。任何建议都会有所帮助...谢谢

1 个答案:

答案 0 :(得分:2)

Qt已经囊括其中 QFtp :: put(QIODevice * dev,const QString& file,TransferType type = Binary) 数据从IO设备读取数据块,因此这种过载允许传输大量数据,而无需一次将所有数据读入内存, 以前我用过 QFtp :: put(const QByteArray& data,const QString& file,TransferType type = Binary) 因此,在分配内存时,代码会因大文件而崩溃。