Obecnie pracuję nad aplikacją, która wysyła i odbiera plik ze zdalnego serwera. Aby wykonać operację sieciową, używam QNetworkAccessManager.Limit czasu QNetworkAccessManager
Aby przesłać plik używam QNetworkAccessManager :: put() i do pobrania Używam funkcji QNetworkAccessManager :: get().
Podczas przesyłania pliku zainicjuję licznik czasu z czasem wynoszącym 15 sekund. jeśli prześlę niewielki plik, wypełni go w określonym czasie. Ale jeśli spróbuję przesłać plik, który jest bardzo duży, otrzymam limit czasu. Jak więc zdecydować o czasie na wysyłanie dużego pliku.
To samo w przypadku pobierania dużego pliku. Dostaję plik w porcji przez porcję w sygnale readyread(). Tutaj także, jeśli pobierasz duży plik, otrzymuję czas. Jak więc zdecydować o czasie na wysyłanie dużego pliku.
Jak anulować operację pobierania i sprawić, że QNetworkReply emituje httpFinished()? – Temak
@Temak używają 'reply-> abort()' i 'send reply-> finished()' – vladon
To powinno być zaimplementowane przez framework IMO ... – Kolyunya