Я разрабатываю приложение С# Winforms, часть приложения будет загружать файлы на веб-сервер с помощью AsyncUpload (используя его из-за необходимости использования обратного вызова porgress), в программе С#
Я получил простой цикл, который вызывает функцию "Загрузить"
for(int i=0;i < 10 ; i++)
{
Uploadfun();
}
И весело приносит некоторую магию:
Uploadfun()
{
// Logic comes here
// webClient.UploadFileAsync runs a 2nd thread to perform upload ..
webClient.UploadFileAsync(uri, "PUT", fileNameOnHD);
}
И обратный вызов, который вызывается при загрузке Async
Upload_Completed_callback()
{
//Callback event
}
Изменить
Логическая последовательность:
- Fun получает вызов (из цикла)
- Логика удовольствия выполнена и выполнена.
- Возврат к циклу
- Обратный вызов будет вызван в конечном итоге, когда UploadFileAsync (который запускает некоторую логику в другом потоке) закончится
Проблема на третьей точке, когда выполнение возвращается в цикл for, мне нужно заблокировать цикл от продолжения до вызова callback.