Вы говорите о .NET Таймер ? Почему это не работает для вас? Эта ссылка содержит примеры (если вы об этом говорите) его настройки, а затем, после того, как он отключился, вы можете просто утилизировать его, чтобы ваше событие не начиналось несколько раз.
РЕДАКТИРОВАТЬ : интервал в миллисекундах, поэтому просто умножьте количество секунд на 1000. т.е. на 40 секунд, 40 * 1000 = 40000
.
EDIT2 : Согласно вашему другому комментарию, в нижней части ссылки, которую я привел, приведен пример для C ++. TimerEventProcessor
устанавливается как EventHandler
для таймера в Main
и будет запускаться, когда таймер будет «поднят» (Visual Studio может уже настроить его для вас, когда вы добавляете элемент управления Timer
к форма). Поскольку вы хотите, чтобы таймер работал только один раз, и вам не нужны другие функции, которые он предоставляет, я бы просто выбрал использование потока, как я ранее предлагал:
Вы также можете просто создать другой поток, который вызывает sleep
для ожидания в течение 40 секунд, а затем запускает ваше «событие».