в ожидании сигнала
Я работаю над приложением, которое загружает содержимое файла на сервер.
Для загрузки файла на сервер я использую класс «QNetworkAccessManager». Поскольку он работает асинхронно, я изменил его на синхронный, используя QEventLoop.
Class FileTransfer
{
Public :
QNetworkAccessManager mNetworkManager;
Void Upload(QNetworkRequest request, QIODevice *data)
{
responce = mNetworkManager.put(request, data);
EventLoop.exec();
ReadResponce(responce);
}
Void Stop()
{
responce ->close();
}
}
В моем примере приложения у меня есть 2 окна. 1-й, чтобы выбрать файлы и 2-й, чтобы показать прогресс.
Когда пользователь нажимает кнопку загрузки в первом окне, отображается второе окно, а затем я создаюПередача файла Объект и начать загрузку.
При загрузке файла, если пользователь закрывает форму, в деструкторе окна я вызываю остановку ‘Передача файлаПосле этого я удаляюПередача файла’Объект.
Но здесьЗагрузить () функция еще не завершена, поэтому она будет зависать.
Пожалуйста, помогите мне: Как ждать в'стоп()'функция, пока функция Upload () не будет завершена