Как мне запланировать выполнение задачи в будущем на указанную дату / время? - PullRequest
0 голосов
/ 02 июня 2019

Да, я знаю, этот вопрос задавался много раз, но я действительно не нашел ничего, что помогло бы мне, вот и все ...

Я хочу запустить задачу (вызов API) и выбрать время для вызова этого API в будущем.

Например, если я хочу сделать расписание твитом. Я хочу сделать вызов API в 13:00 завтра, но в настоящее время это 7:00. Я не хочу, чтобы это повторялось, только чтобы запланировать это на указанное время.

Как бы я сделал это программно с c #?

Ответы [ 2 ]

1 голос
/ 02 июня 2019

Вы можете запланировать System.Threading.Timer следующим образом с заданной dueDate (типа DateTime) и бесконечным периодом для отключения повторения.

using System.Threading;

new Timer(_ => do_your_thing, dueDate - DateTime.Now, Timeout.InfiniteTimeSpan);
0 голосов
/ 02 июня 2019

Вы можете использовать Timer компонент (System.Timers) , чтобы вызвать событие через определенный интервал, лично я думаю, что этот метод довольно прост в использовании, я надеюсь, что он может удовлетворить ваши потребности.

Timer timer = new Timer
{
    Interval = 2000
};
timer.Enabled = true;
timer.Elapsed += new ElapsedEventHandler(OnTimerEvent);


private static void OnTimerEvent(object sender, EventArgs e)
{
    //your process
}
...