目前,我正在开发一个从远程服务器发送和接收文件的应用程序。为了进行网络操作,我使用了QNetworkAccessManager。
要上传文件,请使用QNetworkAccessManager::put();要下载文件,请使用QNetworkAccessManager::get()函数。
上传文件时,我会初始化一个计时器,计时器的超时时间为15秒。如果我上传一个小文件,它将在超时期限内完成。但是,如果我试图上传一个非常大的文件,得到超时。那么如何决定上传大文件的超时时间呢?
下载大文件的情况也是如此。我在readyread()信号中逐块获取文件。在这里,如果我下载一个大文件,我也会超时。那么如何决定上传大文件的超时时间呢?
发布于 2010-04-19 23:32:30
使用QNetworkReply::uploadProgress() (或downloadProgress)信号提醒您操作正在进行中。然后,在最后一次uploadProgress/downloadProgress通知后设置计时器15秒(计时器在下载/上传开始时启动)。如果下载停止,您可以在上次更新后15秒取消操作。
https://stackoverflow.com/questions/2668519
复制相似问题