Compartilhar via


Introdução a timers baseados em servidor

Timers baseados em servidor que você especificar um intervalo recorrente em que será gerado um evento em seu aplicativo.Em seguida, você pode manipular esse evento para fornecer processamento normal.Por exemplo, suponha que você tenha um servidor crítico que deve ser mantido em execução 24 horas por dia, sete dias por semana.Você pode criar um serviço que usa um timer para verificar periodicamente o servidor crítico para garantir que o sistema está em execução.Se o sistema não estiver respondendo, o serviço pode tentar reiniciar o servidor ou notificar um administrador.

Observação:

O intervalo de temporizadores de servidor é especificado em milissegundos.

Timers de servidor Windows Timers e timers de segmento

Há três controles timer em Visual Studio e o .NET Framework:

  • Um timer baseado em servidor, que você pode adicionar à Caixa de ferramentas

  • Um timer com base no baseado no Windows, que está sempre no Caixa de ferramentas

  • A thread timer, que está disponível por meio de programação

O timer baseado no Windows é otimizado para uso em aplicativos Windows Forms.O timer baseado em servidor é uma atualização do timer tradicional que foi otimizado para ser executado em um ambiente de servidor.O thread timer é um timer simples e leve que usa métodos de retorno de chamada em vez de eventos e é atendido por thread-s thread do pool.

Há dois tipos de segmentos na arquitetura do Win32: Threads de interface do usuário e segmentos de trabalho.Threads de interface do usuário ficam ociosa na maior parte do time e aguarde as mensagens chegam em seus loops de mensagem.Depois que eles receberão uma mensagem, eles manipulá-lo e aguarde a próxima mensagem chegar.Como alternativa, segmentos de trabalho são usados para executar o processamento em segundo plano e não usam loops de mensagem.O timer de Windows e o timer baseado em servidor executam usando um Interval propriedade. O intervalo da thread temporizador é definido no Timer construtor. sistema autônomo timers são projetados para finalidades diferentes, conforme evidenciado pelo seu tratamento de segmentos:

  • O timer do Windows se destina a um ambiente single-threaded threads de interface do usuário sejam utilizados para executar o processamento.A precisão de temporizadores do Windows é limitada a 55 milissegundos.Esses temporizadores tradicionais exigem que o código do usuário têm uma bomba de mensagem de interface do usuário disponível e sempre funcionam do mesmo segmento ou realizar realizar marshaling a telefonar em outro thread.Para um componente COM, isso seria prejudicial para o desempenho.

  • Timer baseado em servidor foi projetado para uso com segmentos de trabalho em um ambiente multithread.Porque eles usam uma arquitetura diferente, timers baseados em servidor têm o potencial para ser muito mais precisa do que os temporizadores do Windows.Timers de servidor podem mover entre threads para manipular os eventos elevados.

  • O timer de segmento é útil em cenários onde as mensagens não são pumped no thread.Por exemplo, o timer baseado no Windows conta com suporte do timer do sistema operacional e se você não é bombeando mensagens no thread, o evento associado ao seu timer não ocorrerá.O thread timer é mais útil neste caso.

O timer do Windows está localizado no System.Windows.Forms espaço para nome, o timer de servidor está localizado na System.Timers espaço para nome e o timer de segmento está localizado na System.Threading espaço para nome.

Consulte também

Tarefas

Como: Criar instâncias de timers baseados em servidor

Como: Monitor timers baseados em servidor

Conceitos

Arquitetura de programação de timer

Temporizadores

O pool de threads gerenciados

Referência

Timer componente Overview (Windows Forms)