Описывает способы создания потоков в Visual Basic.NET или Visual Basic 2005

Переводы статьи Переводы статьи
Код статьи: 315577 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В данной статье описывается создание потоков в Microsoft Visual Basic.NET или Microsoft Visual Basic 2005 Windows приложения. В System.Threading пространство имен содержит классы, которые необходимы для работы с потоками.

Требования

В следующем списке представлены оборудования, программного обеспечения, сетевой инфраструктуры и пакетов обновления, необходимо:
  • Microsoft Windows 2000 или Microsoft Windows XP
  • Microsoft Visual Basic.NET или Microsoft Visual Basic 2005
Предполагается, что вы знакомы с следующие темы:
  • Visual Basic.NET-кода или программирования Visual Basic 2005
  • Visual Studio.NET или Visual Studio 2005 интегрированной среды разработки (IDE)
  • Общее Знакомство с делегатов и работы с потоками
  • Общее Знакомство с Visual Basic.NET или Visual Basic 2005

Создайте Visual Basic.NET или Visual Basic 2005 приложения с потоками

  1. Запустите Microsoft Visual Studio.NET или Microsoft Visual Studio 2005.
  2. Создание нового проекта приложения Windows Visual Basic с именем ThreadWinApp.
  3. Добавить Кнопка элемент управления в форму. Данная кнопка называется Button1 по умолчанию.
  4. Добавить Компонент ProgressBar компонент в форму. Получает имя индикатора ProgressBar1 по умолчанию.
  5. Щелкните правой кнопкой мыши форму и нажмите кнопку Просмотр кода.
  6. В начало файла добавьте следующий оператор:
    Imports System.Threading
    					
  7. Добавьте следующие строки Нажмите кнопку обработчик события Button1:
    Private Sub Button1_Click( _
        ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        MessageBox.Show("This is the main thread")
    End Sub
    					
  8. Добавьте следующую переменную для Форма Form1 класс:
    Private trd As Thread
    					
  9. Добавьте следующий метод Форма Form1 класс:
    Private Sub ThreadTask()
        Dim stp As Integer
        Dim newval As Integer
        Dim rnd As New Random()
    
        Do
            stp = ProgressBar1.Step * rnd.Next(-1, 2)
            newval = ProgressBar1.Value + stp
            If newval > ProgressBar1.Maximum Then
                newval = ProgressBar1.Maximum
            ElseIf newval < ProgressBar1.Minimum Then
                newval = ProgressBar1.Minimum
            End If
    
            ProgressBar1.Value = newval
    
            Thread.Sleep(100)
        Loop
    End Sub
    						
    ПРИМЕЧАНИЕ: Это код, который лежит в основе потока. Данный пример кода является бесконечный цикл, который случайным образом увеличивает или уменьшает значение ProgressBar1 а затем ожидает в течение 100 миллисекунд перед переходом.
  10. Добавьте следующие строки Загрузка обработчик события Форма Form1. Этот код создает новый поток, делает поток фоновым потоком и затем запускает поток.
    Private Sub Form1_Load( _
        ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles MyBase.Load
    
        trd = New Thread(AddressOf ThreadTask)
        trd.IsBackground = True
        trd.Start()
    End Sub
    					

Убедитесь, что он работает

  1. Построение и запуск приложения. Обратите внимание, что случайным образом меняется значение индикатора хода выполнения. Это новый поток в операции.
  2. Чтобы продемонстрировать, что основной поток не зависит от потока, который изменяет Компонент ProgressBar значение, нажмите кнопку на форму. В окне сообщения выводится следующее сообщение:
    This is the main thread
    							
    Время ожидания ввода. Обратите внимание, что значение индикатора хода выполнения будет продолжено.

Устранение неполадок

В более сложных приложений убедитесь, что при доступе к общим переменным синхронизации нескольких потоков. Для получения дополнительных сведений обратитесь к SyncLock инструкции и связанных разделов в документации по интерактивной справочной системе Visual Basic.

Свойства

Код статьи: 315577 - Последний отзыв: 7 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Ключевые слова: 
kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB315577 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:315577

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com