async Task MyMethodAsync(IProgress<double> progress = null) {
bool done = false;
double percentComplete = 0;
while (!done) {
progress?.Report(percentComplete);
}
}
async Task CallMyMethodAsync() {
var progress = new Progress<double>();
progress.ProgressChanged += (sender, args) => {
// Report 메소드를 실행할 때마다 args로 해당 퍼센트가 넘어온다.
// 여기에서 필요한 상태를 표시하면 된다.
};
await MyMotherAsync(progress);;
}