Bonjour à tous,
Mon problème est plus généraliste que DotNet mais je publie ici car je ne sais où poser ma question (un modérateur m'orientera peut-être vers une autre rubrique !)
Voici mon problème :
Je dois tracé un signal issu d'un régulateur PID. Un tracé temps réel tout à fait classique. Les données sont acquises dans une boucle mais pour le moment pas stockées.
Pour tracé la courbe il faut que je mémorise les données mais je ne sais comment procéder !
Je peux mémoriser TOUTES les données à partir du début du programme ! Bof, pas top !! mon process peut fonctionner pendant plusieurs jours et puis seule la dernière heure a de l'importance.
Donc finalement, 1ere réponse j'enregistre 1 heure de données (ou 'n' heures avec 'n' paramétrable).
Mais il faut donc à chaque nouvelle donnée que je shift les données dans mon tableau d'1 indice vers la gauche. Si 10 points par secondes, je passe mon temps à shifter mon tableau, aucun intérêt !!
Quelle est d'après vous la meilleur technique, à la fois rapide, non consommatrice de ressource ?
Mes recherches me conduisent vers un "buffer circulaire". Existe t il une implémentation de cela en C# ?
Merci d'avance
Partager