예제 #1
0
 public void RunIfNeeded()
 {
     if (!isStarted)
     {
         isStarted = true;
         Task.Factory.StartNew(async() =>
         {
             try
             {
                 await Process();
             }
             catch (BotCancelOperationException e)
             {
                 Console.WriteLine($"User {manager.UserId} cancel operation");
             }
             catch (Exception e)
             {
                 await manager.SendTextMessageAsync(
                     "Что-то пошло не так. Мы уже разбираемся с проблемой, повторите свой запрос позже.",
                     resetMarkup);
                 Console.Error.WriteLine(e);
                 throw;
             }
             finally
             {
                 isStarted = false;
             }
         });
     }
 }