Содержание
Когда компьютерной программе необходимо запустить длинную подпрограмму, лучше всего запускать ее как фоновый процесс. Фоновый процесс обычно не имеет того же приоритета, что и передний план, поэтому он будет выполняться медленнее. Подпрограммы могут включать проверку и загрузку обновлений, загрузку файлов журнала или длительные вычисления.
направления
Подпрограммы в фоновом режиме отлично подходят для длительных процессов (Кутай Танир / Фотодиск / Getty Images)-
Запустите Visual Basic и создайте новый проект типа Windows form.
-
Введите в первой строке файла код:
"Импортирует Систему. Порядок"
И добавить:
"Dim T As Thread"
в основной раздел формы.
-
Добавьте кнопку в форму и измените ее имя на «btnStart». Измените текст кнопки на «Начать фоновый процесс».
-
Добавьте следующий код к действию кнопки «btnStart»:
Private Sub btnStart_Click (отправитель ByVal как System.Object, ByVal и As System.EventArgs) Обрабатывает btnStart.Click t = Новый поток (AddressOf Me.BackgroundProcess) t.Priority = ThreadPriority.BelowNormal 'Это даст подпрограмме еще меньший приоритет t .Start () End Sub
Эта процедура запустит процесс в фоновом режиме и придаст ему более низкий приоритет, чем обычно, чтобы он работал с меньшей скоростью и не мешал элементам навигации пользователя.
-
Добавьте следующую подпрограмму для запуска в фоновом режиме:
Private Sub BackgroundProcess () 'Делайте здесь длинный процесс, а не просто бесконечный цикл.
-
Для детализации добавьте следующий код в метод закрытия формы:
Закрытая вложенная форма Form1_FormClosing (отправитель ByVal как объект, ByVal и как System.Windows.Forms.FormClosingEventArgs) Обрабатывает Me.FormClosing t.Abort () End Sub
Без этой процедуры программа не будет автоматически закрываться, потому что процесс все еще выполняется.
-
Поверните программу и нажмите одну кнопку на форме. Это запустит процесс, предназначенный для запуска в фоновом режиме.
чаевые
- Убедитесь, что все подпрограммы работают в фоновом режиме изолированно. Без использования более продвинутых методов обработки невозможно узнать, что происходит в любое время.
Что вам нужно
- Visual Basic