Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revisar aplicação de timeouts na comunicação com os robôs #60

Open
wants to merge 9 commits into
base: develop
Choose a base branch
from

Conversation

William-Fernandes252
Copy link
Collaborator

@William-Fernandes252 William-Fernandes252 commented Dec 24, 2023

Este PR modifica a aplicação de timeouts na comunicação com os robôs movendo-a para a camada de serviço, fazendo com que os timeouts causem o efeito desejado de forma mais direta e eficaz.

Mudanças

  1. Remoção da opção de timeout no hook "useLoading":

    • o objetivo deste hook é dar feedback sobre a execução dos comandos do usuário. A aplicação de timeouts deixou ele sobrecarregado;
    • a aplicação dos timeouts pelo hook estava fazendo com operações que envolvem o envio de muitos comandos ao robô (como a instalação de uma versão de parâmetros) falhassem de forma indevida por conta da demora. Como o objetivo dos timeouts é cancelar a espera pela resposta do robô após o envio de um comando, aplicá-los nos métodos que enviam os comandos não é a melhor opção, pois o tempo de execução de um método que envia vários comandos pode ultrapassar o limite do timeout, mesmo quando cada comando é respondido em um tempo curto.
  2. Aplicar timeout no envio de mensagens ao robô pelo método "request" da interface "BLEInterface":

    • com os timeouts sendo aplicados aqui, erros em operações como instalação de parâmetros só vão ocorrer caso um dos comandos enviados demore demais para ser respondido, que é o efeito esperado pela funcionalidade de timeouts.

… em vez de aplicar nas rotinas que enviam os comandos
Copy link

github-actions bot commented Dec 24, 2023

Visit the preview URL for this PR (updated for commit cdd1949):

https://tt-linefollower-dev--pr60-fix-falsos-timeouts-8uq4ogbd.web.app

(expires Mon, 11 Nov 2024 17:39:01 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: e52f592e08b2d312c8d4429239baadff48aa423d

@William-Fernandes252 William-Fernandes252 self-assigned this Feb 7, 2024
@William-Fernandes252 William-Fernandes252 changed the base branch from master to develop February 14, 2024 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant