Für was werden Buffer verwendet?

Pfadi

Mitglied
hey Leute,

Wie es der Title schon sagt ist meine Frage: Was sind Buffer?
Ich habe die Vermutung das es Puffer sind, stimmt das? Und Was sind die Vorteile und Nachteile wenn man sie verwendet?
Bsp: Unterschied zwischen String und BufferedString.

Danke für eure Antwort
Grüße Pfadi
 
Buffer ist englisch für Puffer. Wobei Buffer allgemein imho sehr viel gebräuchlicher ist.
Von einen BufferedString habe ich noch nie was gehört.
Benötigt werden sie z. B. wenn du eine Datei kopierst. Du kannst z. B. eine Datei komplett lesen, und dann auf die HDD runterschreiben. Aber ab 1 GB Dateigröße wird das ganz schön haarig. Deshalb läuft es idR. so ab:

Buffer erzeugen (meistens byte[]) -> von der HDD im Buffer schreiben -> vom Buffer auf die HDD schreiben -> von der HDD im Buffer schreiben und dabei die alten Werte ersetzen -> vom Buffer auf die HDD schreiben -> usw.
So können im Hintergrund die alten Daten aus den RAM entfernt werden.

Ein anderes Anwendungsgebiet wäre, falls eine Ressource (z. B. CPU) beschäftigt ist, die Daten zwischengespeichert werden und erst später bearbeitet werden können. Machen z. B. Streams so. Könntest du testen indem du abwechselnd im Out und Err-Stream schreibst. Dabei landen die Daten nicht synchron in der Ausgabe, da sie zu unterschiedlichen Zeiten flushen. (Also den Buffer zum Output senden.)
 

Neue Themen


Zurück
Oben