Compartilhar via


Multithreading em componentes

O componente de BackgroundWorker implementa alguns dos recursos de threads no namespace de System.Threading ; o componente de BackgroundWorker é a maneira mais fácil para implementar a funcionalidade de multithreading.Para mais informações, consulte Visão geral sobre o componente BackgroundWorker.

Multithreading, ou segmentação livre, é a capacidade de executar um aplicativo simultaneamente vários segmentos da operação.Um exemplo de um aplicativo com vários segmentos é um programa que receba entrada do usuário em um segmento, execute uma variedade de cálculos complexos em um segundo segmento, e atualizar um banco de dados em um terceiro segmento.Em um aplicativo de thread única, um usuário pode passar o tempo ocioso espera que os cálculos ou atualizações do banco de dados para concluir.Em um aplicativo com vários segmentos, esses processos podem continuar no plano de fundo para que a hora de usuário não são desperdiçados.

Multithreading pode ser uma ferramenta poderosa em programação componente.Escrever componentes multissegmentados, você pode criar componentes que executam cálculos complexos no plano de fundo deixando a interface de usuário (UI) para responder a entrada do usuário.

Embora multithreading pode ser uma ferramenta poderosa, também pode ser difícil aplicar corretamente.O código multithread incorretamente implementado pode prejudicar o desempenho do aplicativo, ou mesmo aplicativos congelados causa.Os tópicos a seguir introduzem-no a algumas considerações e as práticas recomendadas para programação multithread.

.NET Framework oferece várias opções para multithreading em componentes.A funcionalidade no namespace de System.Threading é uma opção.O padrão assíncrono baseado é outro.O componente de BackgroundWorker é uma implementação do padrão assíncrono; oferece a esse funcionalidade avançada encapsulou em um componente para acessibilidade.

Nesta seção

Referência

  • Classe BackgroundWorker
    Permite que você execute uma operação em um segmento separado, dedicado.

  • Thread
    Fornece informações sobre sintaxe e membros de referência de .NET Framework .

Seções relacionadas

Topic Location
Threading Exemplo dv_cssample
Exemplo de Threading C# Sample Applications

Consulte também

Outros recursos

Criação de componentes

padrão assíncrono baseado (EAP)