In das Array passen genau 12 Integer rein. Mavarik ist glaub ich ein Fan von den Dingern, ich habe die in meinem Leben noch nie benutzt.
Ich denke, es kommt darauf an was man machen will.
In diesem Fall scheint mir etwas derartiges sinnvoll zu sein:
Code:
inputbuffer : array of MyInputValues;
displaybuffer : array [1..maxDisplayvalue];
readerthread:
fill_inputbuffer
mainthread:
transferdatafrominputbuffer_to_displaybuffer;
displaydatafromdisplaybuffer;
Ich gehe mal davon aus, das für die Anzeige immer maxDisplayvalue Werte benötigt werden. Also wird beim Display-Aufrum immer der vollständige Displaybuffer ausgegeben.
Beim Transfer werden die Daten aus dem Inputbuffer so aufbereitet, das sie sinnvoll in den Displaybuffer passen und natürlich auch ein aussagekräftiges Bild ergeben.
Und die "Verwaltung" der Werte findet hier statt, z.B. Löschen der bereits angezeigten Werte, speichern in einem Historyfile usw.
Fillinputbuffer ist nur dafür zuständig Werte entgegen zu nehmen und sie in den Inputbuffer zu schreiben.
Gruß
K-H