Ringbuffer realisieren mit List(of string)

21/10/2008 - 08:26 von Thomas Hübner | Report spam
Hi NG,

Ich bekomme unregelmàßig UDP Pakete (String) und muß diese in eine
Textbox schreiben. Das mache ich bisher direkt. Nun soll eine
Möglichkeit eingebaut werden das Log anzuhalten.
Mein Ansatz wàre eine Public List(of String) in die ich die UDP Pakete
mit Add zufüge wenn Sie eintreffen. Ein seperater loopender Thread soll
immer den ersten String auslesen ( wenn List(of).count>0 ist) und
löschen. Wenn das Log angehalten wird (über ein Flag), soll der Thread
nichts tun und die Liste erstmal vollaufen lassen.

Ist sowas einsetzbar? Kann es Probleme bei der Übergabe über die
List(of) geben? (z.B. das count schon > 0 ist obwohl der String noch
nicht komplett in der List ist)

Gibt es Alternativen?

Gruß,
Thomas
 

Lesen sie die antworten

#1 Peter Fleischer
21/10/2008 - 09:45 | Warnen spam
"Thomas Hübner" schrieb im Newsbeitrag
news:gdjsn6$ig1$

Ich bekomme unregelmàßig UDP Pakete (String) und muß diese in eine Textbox
schreiben. Das mache ich bisher direkt. Nun soll eine Möglichkeit
eingebaut werden das Log anzuhalten.
Mein Ansatz wàre eine Public List(of String) in die ich die UDP Pakete mit
Add zufüge wenn Sie eintreffen. Ein seperater loopender Thread soll immer
den ersten String auslesen ( wenn List(of).count>0 ist) und löschen. Wenn
das Log angehalten wird (über ein Flag), soll der Thread nichts tun und
die Liste erstmal vollaufen lassen.

Ist sowas einsetzbar? Kann es Probleme bei der Übergabe über die List(of)
geben? (z.B. das count schon > 0 ist obwohl der String noch nicht komplett
in der List ist)

Gibt es Alternativen?



Hi Thomas,
so etwas ist problemlos machbar, aber nicht mit der "List Of"-Klasse.

Einfach realisierbar ist das mit einer FIFO-Liste. Das Framework bietet dazu
die generische Queue-Klasse.

Dim q As Queue(Of String)

Viele Grüsse
Peter

Ähnliche fragen