From 7f3bcfe418b4a8307360f291eeef6f1657991d9b Mon Sep 17 00:00:00 2001 From: FlorianDahn Date: Sun, 28 Feb 2021 17:46:49 +0100 Subject: [PATCH] Speed/Performance optimization for AutoCleanForm --- TelegramBotBase/Form/AutoCleanForm.cs | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/TelegramBotBase/Form/AutoCleanForm.cs b/TelegramBotBase/Form/AutoCleanForm.cs index 20aa644..de87660 100644 --- a/TelegramBotBase/Form/AutoCleanForm.cs +++ b/TelegramBotBase/Form/AutoCleanForm.cs @@ -128,15 +128,26 @@ namespace TelegramBotBase.Form /// public async Task MessageCleanup() { - while (this.OldMessages.Count > 0) + var tasks = new List(); + + foreach (var msg in this.OldMessages) { - if (!await this.Device.DeleteMessage(this.OldMessages[0])) - { - //Message can't be deleted cause it seems not to exist anymore - if (this.OldMessages.Count > 0) - this.OldMessages.RemoveAt(0); - } + tasks.Add(this.Device.DeleteMessage(msg)); } + + await Task.WhenAll(tasks); + + this.OldMessages.Clear(); + + //while (this.OldMessages.Count > 0) + //{ + // if (!await this.Device.DeleteMessage(this.OldMessages[0])) + // { + // //Message can't be deleted cause it seems not to exist anymore + // if (this.OldMessages.Count > 0) + // this.OldMessages.RemoveAt(0); + // } + //} } } }