Отображение консоли при таймере - C#

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

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

Есть необходимость использовать таймер, по окончании временного интервала которого должен запускаться определенный метод. Для тестов использую вывод текста в консоль. Но таймер не отрабатывает как положено, а консоль закрывается, не спрашивая разрешения. Вот код:
static void Main(string[] args)
        {
            long interval = 10000;
            Timer timer = new Timer(onTime, null, 10, interval);
           //Console.ReadLine();
            Console.WriteLine("start script");
        }
 static void onTime(object obj)
        {
            Console.WriteLine("\ntimer");
            Console.ReadLine();
        }

Решение задачи: «Отображение консоли при таймере»

textual
Листинг программы
        //
        // Сводка:
        //     Инициализирует новый экземпляр класса Timer, используя указанное 64-разрядное
        //     знаковое целое число для измерения временных интервалов.
        //
        // Параметры:
        //   callback:
        //     Делегат System.Threading.TimerCallback, представляющий выполняемый метод.
        //
        //   state:
        //     Объект, содержащий информацию, используемую методом ответного вызова или
        //     значение null.
        //
        //   dueTime:
        //     Количество времени до начала использования параметра callback, в миллисекундах.
        //     Следует задать поле System.Threading.Timeout.Infinite для того, чтобы не
        //     допустить запуск таймера. Задайте значение ноль (0) для немедленного запуска
        //     таймера.
        //
        //   period:
        //     Временной интервал между вызовами параметра callback, в миллисекундах. Следует
        //     задать поле System.Threading.Timeout.Infinite для отключения периодической
        //     сигнализации.
        //
        // Исключения:
        //   System.ArgumentOutOfRangeException:
        //     Значение параметра dueTime или period отрицательно, и не равно System.Threading.Timeout.Infinite.
        //
        //   System.NotSupportedException:
        //     Значение параметра dueTime или period больше 4294967294.
        public Timer(TimerCallback callback, object state, long dueTime, long period);

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


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

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

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