Verständnisfrage BufferedInputStream()

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Verständnisfrage BufferedInputStream()

    Hallo,

    eine kleine Verständnisfrage zu BufferedInputStream und (z.B.) Sockets:

    BufferedInputStream bis = new BufferedInputStream(socket.getInputStream());


    wieviel wird in diesem Fall immer aus dem Socket gelesen? So viel wie vom buffered stream gelesen wird?

    Bsp:

    Angenommen, am Socket sind 10 Bytes angekommen. Nun wird aber nur ein Byte gelesen und der bis geclosed:

    bis.read();

    bis.close();

    Was passiert in diesen Fällen mit den restlichen 9 Bytes? Sind die schon in den BufferdInput gelesen worden und "verschwinden" mit bis.close() oder leigen die noch in dem Socket-"Eingangspuffer" ? Sprich, wenn nach bis.close() ein neuer bis sagen wir bis2 initialisiert werden würde und wie oben mit dem Socket verbunden werden würde, würde mann dann als erstes die 9 Bytes erhalten oder sind wären die weg? ;)

    Ich hoffe ich konnte meine Frage verständlich ausdrücken und danke euch schonmal für eventuelle Antworten.