Corrija desvios de período e travamentos na exibição a partir de medições.
Você quer monitorar um equipamento em um período constante. Quer reduzir as perdas de amostras nas medições. Quer manter a tela responsiva mesmo durante o processamento de dados. A KomuraSoft organiza esses requisitos de tempo dos aplicativos Windows e apoia o projeto, a implementação e a modificação.
Problemas sobre os quais pode nos consultar
- O intervalo de execução do processamento periódico varia ou se desvia com o passar do tempo
- Ocorrem atrasos e perdas de amostras no monitoramento de equipamentos e nas medições
- A renderização fica entrecortada, a atualização da tela para ou o aplicativo deixa de responder às operações
- Interface, comunicação, logs e esperas se misturam, e não se sabe onde o atraso se origina
- A resposta piora em operação prolongada ou em condições de carga alta
Primeiro, definir as condições de tempo necessárias
O soft real-time de que tratamos aqui é um projeto que reduz atrasos e a variação do período em um Windows convencional. Não é uma garantia de hard real-time, ou seja, a garantia de que todo o processamento seja sempre concluído dentro do prazo.
Organizamos o período-alvo, a latência tolerável, os processamentos que podem ser perdidos e os dados que devem ser mantidos, os computadores de destino e as condições de carga. Com isso, definimos o que será medido e sob quais condições as melhorias serão avaliadas.
Desenvolvimento e melhorias que realizamos
Processamento periódico e monitoramento de equipamentos
Revisamos timers, polling, métodos de espera e notificações por eventos e avaliamos uma arquitetura adequada ao período necessário. Na comunicação com equipamentos, o projeto inclui timeout, reconexão e detecção de anomalias.
Renderização e resposta às operações
Separamos a atualização da interface, a renderização e o processamento em segundo plano e investigamos a carga que prejudica a exibição e as operações. Verificamos o equilíbrio entre a frequência de exibição e o volume de processamento para reduzir a renderização entrecortada e os travamentos de resposta.
Medição e operação prolongada
Criamos logs e pontos de medição que permitem acompanhar os tempos de processamento e de espera. Verificamos o comportamento em operação prolongada, inclusive o início e a parada do processamento, o cancelamento e o tratamento de exceções com Generic Host / BackgroundService e recursos semelhantes.
Como o trabalho é conduzido
- Definimos os objetivos e as condições. Organizamos o período, a latência, os equipamentos, a carga e os processamentos prioritários.
- Medimos os atrasos. Separamos comunicação, espera, renderização, logs e outros processamentos e identificamos os trechos que consomem tempo.
- Melhoramos a arquitetura. Conforme a causa, revisamos a divisão do processamento, o método de espera e a passagem de dados.
- Comparamos nas mesmas condições. Fazemos medições antes e depois da modificação e a verificação em operação prolongada, e organizamos o que melhorou e as restrições que permanecem.
Você pode nos consultar já na etapa de “queremos avaliar até onde o Windows consegue atender”. Se puder, informe os sintomas atuais e o período e o tempo de resposta que você tem como meta.