А зачем вам ждать? Пусть себе в фоне работают. Каждый метод заверните в трай кэтч и возвращайте класс который содержит все что вы обрабатываете плюс статус и эксепшкн.
Допустим у вас 10 файлов.
После обработки вы получили 8 статусов ок и 2 ошибке filetilargeexceptiin connection timeoutexception так вот второй просто повторяете а по первому выводите сообщение уменьшите размер файла
Роман Мирр, в моей практике часто встречаются задачи что сервис мониторит папку и при появлении нового файла выполняет действие. Типичный пример это сканы или iot устройство заливающее фотографии и джисон с металанными. Так что мне кажется это типичная бизнес задача
Впрочем есть и более простой метод . В основной форме добавляете переменные
Percent label is complete. Добавляете таймер который тикает положим каждые пол секунды. Он при тике сравнивает эти переменные у контролов и если они различаются то устанавливает из на основе переменных. А эти переменные выставляются в вашем потоке. Правда заверните все это в lock (locker)
Имя Фамилия, это ответ, просто вас он не устроил. Я много с сайтами и порталами работаю и понял что быстрее заплатить за дизайн чем пытаться этому научится, тем более художественный вкус он не у всех присутствует.
FanatPHP, пришёл мусор, этот мусор можно сконвкртировать и залить уже не мусор. Если конечно усечения не было. А вообще сейчас правило хорошего тона везде использовать utf8