Verständnisfrage zu den Streams

Mikrowelle

Bekanntes Mitglied
Ist der output Stream vom Server der input Stream des Clienten ?
Ist der input Stream des Server der output Stream des Clienten ?

Oder

Hat der Server einen in und output Stream sowie der Client seine eigene. So das die nichts mit einander zu tun haben ?

Ich möchte mir das gern Bildlich vorstellen, auf der linken Seite ist der Server und rechts ist der Client.

Wären die Streams Linien, müsste ich jetzt nur zwei Linien zeichnen oder 4 ?
 
M

Marcinek

Gast
2 Linen,

aber es sind 4 Streams ^^

Der eine Schreibt auf einen Datenkanal (OutputStream) der andere liest auf dem Datenkanal (InputStream)
 

Mikrowelle

Bekanntes Mitglied
Ich habe eben über so einen Kabel gelesen das würde aber beudeten das es zwei linien sind die Aussage

Ist der output Stream vom Server der input Stream des Clienten ?
Ist der input Stream des Server der output Stream des Clienten ?

Aber trotzdem Falsch ist oder ?
 
S

SlaterB

Gast
es gibt verschiedene Betrachtungsebenen, ganz grob ist es eine richtige Aussage, je zwei Dinge gehören zusammen,

aber wenn sich zwei Menschen über Kreuz beide Hände geben, dann gilt ja strenggenommen auch nicht:
die linke Hand von A IST GLEICH die linke Hand von B,
es sind schon unterschiedliche Dinge, die verknüpft sind
 
T

tröööt

Gast
um es vielleicht mal bildlich darzustellen
Code:
ServerInputStream<----<ClientOutputStream
ServerOutputStream>---->ClientInputStream
wobei es eher ist wie Slater sagte : ServerInputStream ist nicht gleich ServerOutputStream ... sondern es sind zwei eigenständige dinge die mit ein ander verknüpft sind ...

rein logisch stimmt es aber : was man im client in den output schreibt kann man auf dem server im input lesen und vice-versa
 

HBerger

Mitglied
Sorry, ich komm aus der C/C++ Welt :)
Ich weiss nicht wie es in der Java Welt laeuft.

Aber mit der beschriebenen Betrachtungsweisse wirst in der Netwerk-Programmierung nicht weiter kommen.

Betrachte die Streams als Stecker an einem unidirektionalen Kabel: InputStreams die "Pappa"- und OutputStreams die "Mamma"-Stecker
unidirektional iss ja noch ok :) es gehen eh nur 2 richtungen (bidirektional)
Aber die Endpunkte sind definitiv keine "Streams"
Für die Endpunkte gibts andere Abstrakte Begriffe. IODevices, Sockets ... etc
Im speziellen falle versuchst du grad nen "Socket" zu erklären.

2 Linen,
aber es sind 4 Streams ^^
1 biderektionale Line (oder 2 linien) sind ok.
2 Sockets !
und beliebig viele Streams

Was sind nun Streams ?
Streams sind nichts was ein reales Objects beschreibt. Also kein Endpunkt, keine Linie, keine Verbindung.
Streams bezeichnen eher eine Tätigkeit. das lesen und schreiben von daten (rohdaten oder text) ohne manipulation von positionen, einfach nur der reihe nach.
DIe Abstraction des Vorgangs ist der Stream.
Ziele von Streams muessen nicht nur Netzwerk verbindungen sein, sondern es gehen alle streamfaehige Devices ...
- Dateien
- Konsole
- Puffer (byte-Arrays im speicher).

und ein so ein Ziel (device) kann mehrere Streams bedienen.
wobei parallel mit mehreren streams auf einmal schreiben eher sinnfrei ist, kann aber parelleles lesen von daten manchmal sinnvoll sein ...

Streams gibts als Input, Output und als Input/Output Stream (IStream, OStream, IOStream). Also mit einem Stream auf einem socket z.b. koennte man lesen und gleichzeitig mit dem selben Stream schreiben.
Also ein endpunkt == 2 Streams ist definitiv nicht zwingend :)

Ich denk in Java ist das ähnlich :) DIe konzepte werden sich nicht so ändern ...

Also sieh ein Stream in Java als Abstraktes Object an, wo man Daten(binaer oder Text) in Reihenfolge reinschreiben, bzw rauslesen kann. Was (im Hintergrund) immer mit nem "Device(Gerät)" verbunden ist.
In C/C++ musst die verbindungen fast immer selber zusammenbauen, denk in Java geht da halt vieles automatisch ???

Ciao ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Verständnisfrage zu httpsConnect Netzwerkprogrammierung 3
K Websocket Verständnisfrage Netzwerkprogrammierung 7
M Socket Allgemeine Verständnisfrage Netzwerkprogrammierung 3
A Verständnisfrage Multi-Threaded Client/Server Netzwerkprogrammierung 5
F Verständnisfrage Verfügbarkeit Socketverbindung Netzwerkprogrammierung 5
M Verständnisfrage zu RMI und Threads Netzwerkprogrammierung 2
S RMI Verständnisfrage Netzwerkprogrammierung 4
X RMI Verständnisfrage Netzwerkprogrammierung 3
B Allgemeine Verständnisfrage Netzwerkprogrammierung 7
F Chat Programm. Verständnisfrage while-Schleife Netzwerkprogrammierung 7
T Sockets Verständnisfrage: abwechelnd lesen-schreiben Netzwerkprogrammierung 4
J Threads & Streams Netzwerkprogrammierung 9
N Paket-Analysieren Byte-Streams Netzwerkprogrammierung 12
C Socket Cipher Streams Netzwerkprogrammierung 6
E Verfügbarkeit von Daten in Streams Netzwerkprogrammierung 4
V HTTP Streams setzen Netzwerkprogrammierung 10
N Socket Fehler bei Streams Netzwerkprogrammierung 2
1 SSH-Kommunikation - Ende eines Streams nicht erkenntlich Netzwerkprogrammierung 2
D Socket Streams schliessen .. Exception gewollt? Netzwerkprogrammierung 4
B Server mit meheren Streams/Aufgaben? Netzwerkprogrammierung 9
H RMI RPC "not suitable for streams and.." Netzwerkprogrammierung 2
T HTTP Encoding von Http-Streams Netzwerkprogrammierung 2
L mehrere Streams über einen Socket? Netzwerkprogrammierung 8
V Mehrere Streams durch einen Stream senden Netzwerkprogrammierung 14
M Streams verwenden Netzwerkprogrammierung 3
A Streams per RMI übergeben Netzwerkprogrammierung 6
P problem beim schließen eines Streams Netzwerkprogrammierung 6
K Selbe Streams mehrfach nutzen (zusätl. Thread) Netzwerkprogrammierung 6
J while-Schleife / Abbruchbed. beim Einlesen eines Streams Netzwerkprogrammierung 4
J Länge eines Streams Netzwerkprogrammierung 4
M Streams Bündeln Netzwerkprogrammierung 10
P Probleme mit Input- / Output-Streams Netzwerkprogrammierung 2
M Ende des Streams ohne Schließen/Checksumme mitsenden Netzwerkprogrammierung 2
M Probleme beim Abfangen von Streams Netzwerkprogrammierung 5
8 Socket Streams nur mit Byte? Netzwerkprogrammierung 2
E frage zu streams Netzwerkprogrammierung 2
F ResultSet in Streams Netzwerkprogrammierung 8
C IRC CHAT auslesen -> Sockets/input und output Streams Netzwerkprogrammierung 9

Ähnliche Java Themen


Oben