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.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!