vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
TCP Listener - Timeout 
Autor: Sev7eNup
Datum: 12.05.10 14:49

Ich habe eine Client/Server Anwendung, die als Chat läuft. Das funktioniert alles ohne Probleme.

Allerdings trennt der Server alle Verbindungen zu den Clients, sofern innerhalb von 20 Minuten keine Daten übermittelt wurden.
Also wenn 3 Clients 20 Minuten lang, in der selben Zeitspanne, keine Daten senden, werden alle Clients rausgeschmissen.

Ich vermute Mal, dass es mit einem Default-Wert zusammenhängt, der die Timeout-Zeit regelt. Allerdings habe ich bis jetzt noch keine Möglichkeit gefunden diesen zu ändern... Mit
         server.Server.SendTimeout = 900000
hat es nicht funktioniert, oder ich habe was falsch gemacht.

Module Module1
    Private server As TcpListener
    Private client As New TcpClient
    Private ipendpoint As IPEndPoint = New IPEndPoint(IPAddress.Any, 43125)
    Private list As New List(Of Connection)
 
    Private Structure Connection
        Dim stream As NetworkStream
        Dim streamw As StreamWriter
        Dim streamr As StreamReader
        Dim nickname As String
    End Structure
 
    Sub Main()
        Console.WriteLine("Der Server wurde gestartet und lauscht auf Port" & _
          "43125..." & vbCrLf)
        server = New TcpListener(ipendpoint)
        server.Start()
 
        While True ' Server wartet auf Verbindung
            client = server.AcceptTcpClient
 
            Dim c As New Connection ' Neue Verbindung wird für neue Connection 
            ' erstellt
            c.stream = client.GetStream
            c.streamr = New StreamReader(c.stream)
            c.streamw = New StreamWriter(c.stream)
 
            c.nickname = c.streamr.ReadLine
 
            'Hinzufügen des Clients zur generischen Liste
            list.Add(c)
            Console.WriteLine(c.nickname & " ist beigetreten...")
            ' Nachricht wird an alle Clients versendet
            SendToAllClients(c.nickname & " ist beigetreten...")
 
            'Prozedur ListenToConnection wird in Thread "t" gestartet
            Dim t As New Threading.Thread(AddressOf ListenToConnection)
            t.Start(c)
            'Status der User wird an alle Clients gesendet, sobald sich ein 
            ' neuer User anmeldet:
            status()
        End While
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
TCP Listener - Timeout3.377Sev7eNup12.05.10 14:49
Re: TCP Listener - Timeout1.608Sev7eNup25.05.10 14:21

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel