Vb.Сетевое ожидание процесса 30 секунд

#vb.net

#vb.net

Вопрос:

У меня есть три события, которые нужно запустить при нажатии кнопки.

после запуска первого события я хочу подождать 30 секунд, чтобы дождаться запуска следующего события.

как я могу ждать (я имею в виду цикл в течение 30 секунд).

Спасибо, Ворчун

Комментарии:

1. msdn.microsoft.com/en-us/magazine/cc164015.aspx

Ответ №1:

Вы можете попробовать это непосредственно в своем коде:

     MessageBox.Show("Test") ' Execute your method 1
    System.Threading.Thread.Sleep(30000)
    MessageBox.Show("Test2") ' Proceed with the other one :)
  

Ответ №2:

Если вы будете ждать в потоке пользовательского интерфейса, вы заблокируете весь пользовательский интерфейс, и Windows покажет ваше приложение как не отвечающее.

Лучше, чтобы:

  • Обновите пользовательский интерфейс, чтобы показать, что он занят, включая отключение элементов управления, блокирующих пользовательский ввод.
  • Используйте управление таймером (подробности зависят от WinForms или WPF), чтобы инициировать событие после временной задержки
  • Выполните работу в обработчике событий таймера.

Если работа требует больших затрат процессора или ввода-вывода (т.е. вероятно, он заблокируется более чем на несколько десятков миллисекунд), затем выполните работу в пуле потоков (например, BackgroundWorker компоненте). Помните, что вам нужно будет использовать Control.Вызывается для внесения любых изменений в пользовательский интерфейс из рабочего потока.

Ответ №3:

Вы можете использовать поток System.Threading.Thread.Sleep(30000); для приостановки выполнения.

Ответ №4:

используйте для этого таймер и установите интервал в 30 секунд для таймера (1sec = 1000)

 timer1.Interval=30000