tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
477
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von JJB
    JJB JJB ist offline Cogito ergo brumm
    Registriert seit
    Jan 2004
    Ort
    Stuttgart
    Beiträge
    261
    TachTach !

    Vielleicht ist der Titel ein wenig unpassend. Tatsächlich sendet der Networkstream, aber erst dann wenn ich den Stream schließe. Die Flush Funktion hat keine Wirkung.

    Ich habe einen Server der Anfragen von Clients beantwortet. Dazu sind aber mehrere Pakete zu schicken. Wenn ich nun zwischen den Paketen immer den Port schließen und neu aufbauen muß damit ein Paket ankommt, kann ich nicht mehr sicher sein, dass das zweite Paket noch an den selben Client geht.

    Ich muss dem Networkstream doch irgendwie sagen können, "Gib deine Daten jetzt frei" ohne dass ich gleich die Verbindung trenne

    Jemand ne Idee ?.
     
    PS: Ja, ich habe gegoogelt und nein, ich will kein Viagra kaufen
    PPS: Tod allen verketteten Suchmaschinen

  2. #2
    Avatar von JJB
    JJB JJB ist offline Cogito ergo brumm
    Registriert seit
    Jan 2004
    Ort
    Stuttgart
    Beiträge
    261
    Stückchenweise auslesen ist möglich ohne den Stream zu schließen.
    Wichtig ist eine feste Angabe an zu lesenden Bytes. Diese kann auch größer sein, als die Anzahl tatsächlich gesendeter Bytes

    Sender:
    itsNetworkStream.Write(aByteArray, 0, aByteArray.Length);

    Empfänger:
    FileStream aFileStream = new FileStream("Data.dat", FileMode.Create);
    byte[] aByteArray = new byte[256];
    do
    {
    int aReadBytes = itsNetworkStream.Read(aByteArray, 0, aByteArray.Length);
    aFileStream.Write(aByteArray, 0, aReadBytes);
    aByteArray = new byte[256];
    }
    while(itsNetworkStream.DataAvailable);
    aFileStream.Flush();
    aFileStream.Close();
     
    PS: Ja, ich habe gegoogelt und nein, ich will kein Viagra kaufen
    PPS: Tod allen verketteten Suchmaschinen

  3. #3
    Avatar von aquasonic
    aquasonic aquasonic ist offline Mitglied Brillant
    Registriert seit
    Jan 2004
    Ort
    Schweiz :: Bern
    Beiträge
    942
    Ich habe mit NetworkStream keine Erfahrung. Habe jedoch mit den Protokollen UDP und TCP gearbeitet. In Deinem Falle könntest du dies warscheinlich auch über TCP machen, benutze dafür das Objekt TcpClient. UDP ist verbindungslos und warscheinlich für dein Projekt weniger geeignet.

    Ich hoffe Dir mit meinen Ratschlägen ein bisschen geholfen zu haben.
     
    MfG AqUaSoN!C

    o Wie man richtig Fragen stellt o

    o Nicht in Problemen sondern in Lösungen denken! o

    o Es gibt 2 Dinge, die sind unendlich: das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir noch nicht ganz sicher. o

    > Meine Linksammlung > http://linksys.aquasonic.ch

    > Mein Wiki > http://wiki.aquasonic.ch

  4. #4
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    weshalb erzeugst du denn in der Schleife eines neues byte[] ? Das ist unnötig, du kannst das zuvor definierte byte[] wiederverwenden. Die Inhalte werden durch den Read-Vorgang überschrieben und solange du nur aReadBytes bytes aus dem byte[] herausliest liest du auch nur die Daten die wirklich beim letzten Read - Vorgang in das byte[] eingelesen wurden.

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  5. #5
    Avatar von JJB
    JJB JJB ist offline Cogito ergo brumm
    Registriert seit
    Jan 2004
    Ort
    Stuttgart
    Beiträge
    261
    @aquasonic:
    Der Networkstream basiert auf einer TCPClient-TCPListener Verbindung.

    @Thomas Darimont:
    Klar, is überflüssig. War noch aus Tests übrig.


    Übrigens... der Eintrag ist bereits als erledigt gelistet. Siehe Lösung oben.
     
    PS: Ja, ich habe gegoogelt und nein, ich will kein Viagra kaufen
    PPS: Tod allen verketteten Suchmaschinen

Ähnliche Themen

  1. Mail() sendet nicht
    Von EddieG im Forum PHP
    Antworten: 16
    Letzter Beitrag: 24.09.10, 00:07
  2. Formular sendet value nicht
    Von itchyfeet im Forum PHP
    Antworten: 2
    Letzter Beitrag: 19.05.10, 17:14
  3. PHP-Datei sendet nicht an DB
    Von svennson im Forum PHP
    Antworten: 5
    Letzter Beitrag: 13.07.05, 16:42
  4. Gästebuch sendet nicht
    Von Yoda im Forum PHP
    Antworten: 0
    Letzter Beitrag: 17.07.03, 22:19
  5. Formular sendet nicht
    Von Yoda im Forum PHP
    Antworten: 2
    Letzter Beitrag: 13.06.03, 07:53