Você está offline; aguardando reconexão
Entrar

Como criar threads no Visual Basic .NET ou Visual Basic 2005

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

315577
Sumário
Este artigo descreve como criar segmentos em um aplicativo do Microsoft Visual Basic .NET ou o Microsoft Visual Basic 2005 Windows. O namespace System.Threading fornece as classes que você deve ter para trabalhar com segmentos.

Requisitos

A lista a seguir descreve o hardware recomendado, software, infra-estrutura de rede e service packs que você precisa:
  • Microsoft Windows 2000 ou Microsoft Windows XP
  • Microsoft Visual Basic .NET ou Microsoft Visual Basic 2005
Este artigo pressupõe que você esteja familiarizado com os seguintes tópicos:
  • Programação do Visual Basic .NET ou programação do Visual Basic 2005
  • O Visual Studio .NET ou Visual Studio 2005 Integrated Development Environment (IDE)
  • Geral familiaridade com delegados e threading
  • Geral familiaridade com o Visual Basic .NET ou Visual Basic 2005

Criar um aplicativo Visual Basic .NET ou Visual Basic 2005 com threads

  1. Inicie o Microsoft Visual Studio .NET ou Microsoft Visual Studio 2005.
  2. Crie um novo projeto Visual Basic Windows Application chamado ThreadWinApp.
  3. Adicione um controle Button ao formulário. O botão é denominado Button1 por padrão.
  4. Adicione um componente ProgressBar para o formulário. A barra de progresso é denominada ProgressBar1 por padrão.
  5. Clique com o botão direito do formulário e clique em View Code .
  6. Adicione a instrução a seguir ao início do arquivo:
    Imports System.Threading					
  7. Adicione o seguinte manipulador de eventos Click para 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. Adicione a seguinte variável à classe Form1 :
    Private trd As Thread					
  9. Adicione o seguinte método à classe 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)    LoopEnd Sub						
    Observação : Este é o código que dá suporte o thread. Esse código é um infinito loop que aleatoriamente incrementos ou diminui o valor no ProgressBar1 e espera 100 milissegundos antes de continuar.
  10. Adicione o seguinte manipulador de eventos Load para Form1 . Esse código cria um novo thread, torna o thread de um segmento de plano de fundo e, em seguida, inicia o thread.
    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					

Verificar se ele funciona

  1. Criar e executar o aplicativo. Observe que o valor na barra de progresso alterado aleatoriamente. Este é o novo thread em operação.
  2. Para demonstrar que o thread principal é independente do thread que altera o valor ProgressBar , clique no botão no formulário. Uma caixa de mensagem exibirá a seguinte mensagem:
    This is the main thread							
    Aguarde a entrada. Observe que o valor na barra de progresso continua a alterar.

Solução de problemas

Aplicativos mais complexos, certifique-se que você sincronizar vários segmentos quando você acessa variáveis compartilhadas. Para obter mais informações, consulte a instrução SyncLock e tópicos relacionados na documentação da Ajuda Online do Visual Basic.
vários segmentos

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 315577 - Última Revisão: 12/06/2006 23:18:59 - Revisão: 4.3

  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB315577 KbMtpt
Comentários