Почему не обновляются данные по событию таймера? - C#

Узнай цену своей работы

Формулировка задачи:

Подскажите пожалуйста, почему в переменную message не поступают нужные данные? (Нужно чтоб раз в 10 секунд в переменную message записывалась строка в формате: i-ое число, текущая дата) Вот собственно код.
class Program
    {
        static string message;
        public static void MessageEvent(object source, ElapsedEventArgs e)
        {
            //string message;
            int packNum = 100;
            for (int i = 0; i < packNum; i++)
            {
                message = string.Format("{0}: {1}", i, DateTime.Now);
            }
        }
        static void Main(string[] args)
        {
            System.Timers.Timer myTimer = new System.Timers.Timer();
            myTimer.Elapsed += new ElapsedEventHandler(MessageEvent);
            myTimer.Interval = 10000;
            myTimer.Start();
 
            Console.WriteLine("\r{0}", message);
            Console.ReadKey();
        }
    }

Решение задачи: «Почему не обновляются данные по событию таймера?»

textual
Листинг программы
class Program
{
    static string message;
    static int counter = 0, maxCount = 100;
 
    public static void MessageEvent(object sender, ElapsedEventArgs e)
    {
        message = string.Format("{0}: {1}", counter++, DateTime.Now);
        Console.WriteLine("\r{0}", message);
        if (counter > maxCount) (sender as System.Timers.Timer).Stop();
 
    }
    static void Main(string[] args)
    {
        System.Timers.Timer myTimer = new System.Timers.Timer();
        myTimer.Elapsed += new ElapsedEventHandler(MessageEvent);
        myTimer.Interval = 10000;
        myTimer.Start();
        Console.ReadKey();
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5
Похожие ответы