Как добавить задержку между методами, выполняющими большую задачу - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть событие нажатия кнопки, которое вызывает методы, которые запускают службы на удаленном сервере. Сбой происходит всякий раз, когда мне нужно запустить большое количество серверных служб, таких как 20. Как я могу быть уверен, что все службы будут запускаться правильно и не выходят из строя? Я читал, что вы можете использовать Thread или Asyn c Delay, чтобы добавить время между методами. Я не уверен, что лучше всего использовать. Любое предложение будет оценено. Заранее спасибо!

protected void StartServices_Click(object sender, EventArgs e)
{
    ServerOne_Start();
    // What should I add between these two methods that will provide some time
    // for ServerOne_Start to execute before executing ServerTwo_Start?
    ServerTwo_Start();
}

1 Ответ

1 голос
/ 18 апреля 2020

Вероятно, самое простое решение - сделать ваш обработчик событий async и await a Task.Delay.

protected async void StartServices_Click(object sender, EventArgs e)
{
    ServerOne_Start();
    await Task.Delay(TimeSpan.FromSeconds(5));
    ServerTwo_Start();
}
...