У меня есть задача очистки, которая удаляет большой файл при выходе.
private async Task DoCleanup()
{
await Task.Run(() =>
{
File.Delete(FilePath);
});
}
Теперь я хочу дождаться этой задачи при выходе (событие FormClosing), но форма закрывается до полного удаления файла.
Я пытался отменить событие и выйтиприложение вручную, как это:
private async void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
this.Hide();
e.Cancel = true;
await DoCleanup();
Application.Exit();
}
Но задача вызывается снова и снова (как бесконечный цикл).Что мне делать?