Thead to the Future
#RustJe travaille actuellement sur un robot compagon nommé Cutii pour lequel nous avons besoins de communiquer sur port série entre le PC du robot et nos différentes cartes électronique, nous avons fait le choix il y a quelques mois d'implémenter une librairie de communication en Rust, afin de rendre plus sûrs et plus performants nos échanges. Ce billet vise à dresser un état des lieux de la gestion de communications asynchrones en Rust.
Pour illustrer les exemples, imaginons que nous ayons un protocole simplifié de communication, nous permettant de faire des GET et SET sur des valeur, en mode requête / réponse et sur port série :
# requête GET pour une valeur foo
foo?\n
# réponse à la requête GET
foo=1\n
# requête SET pour une valeur foo
foo=2\n
# réponse d'acquitement à la requête SET
foo=2\n