NetworkServerEvent()
Verfasst: 26.06.2006 11:56
Hallo,
so schön der Komfort auch ist, habe ich mit Black-Boxen doch immer so meine Probleme.
1.)
Bei NetworkServerEvent() gibt es ja die Möglichkeit, daß ein Client die Verbindung beendet.
Es gibt aber auch die Möglichkeit, daß er das nicht tut wenn z.B. das Client-Programm einfach so beendet wird.
Offensichtlich merkt sich der Server die Verbindung dann weiter.
Ich glaube ich habe sogar irgendwo gelesen, daß er für jeden Cliebt einen eigenen Buffer vorhält.
Wenn das sehr oft passiert (z.B. wenn der Server sehr lange läuft) werden dann irgendwann der Speicher oder die ClientIDs knapp ?
Gibt es die Möglichkeit eine Verbindung durch den Server so zu beenden, daß die Verbindung wirklich frei wird ?
Neben einer Timeout-Variante schwebt mir noch die Variante vor, daß der Server die Verbindung nach einer abgeschlossenen Aktion beendet.
edit :
OK, RTFMC (Read The Fucking Manual Carefully) -> CloseNetworkConnection() geht auch beim Server.
2.)
Woran erkennt der Server eigentlich eine bestehende Verbindung ?
Ich bastle gerade an einem FTP-Server den ich als Netzlaufwerk anspreche (Verknüpfung mit Webodner oder FTP-Site erstellen).
Wenn ich mehrere Windows-Explorer-Fenster auf habe bekommen die meistens die gleiche ClientID.
Wenn ich aber ein anderes Programm nutze (z.B. Wordpad -Datei-öffnen) bekomme ich eine andere ClientID.
Schließe ich Wordpad und probiere es noch einmal bekomme ich die gleiche ClientID.
Daß ständig wechselnde ClientIPs erscheinen geht mir noch in den Kopf (zumindest vermute ich die Ursache bei meinem Router).
Die Vergabe von ClientIDs bzw die Erkennung von "bestehenden" Verbindungen kann ich aber nicht nachvollziehen.
so schön der Komfort auch ist, habe ich mit Black-Boxen doch immer so meine Probleme.
1.)
Bei NetworkServerEvent() gibt es ja die Möglichkeit, daß ein Client die Verbindung beendet.
Es gibt aber auch die Möglichkeit, daß er das nicht tut wenn z.B. das Client-Programm einfach so beendet wird.
Offensichtlich merkt sich der Server die Verbindung dann weiter.
Ich glaube ich habe sogar irgendwo gelesen, daß er für jeden Cliebt einen eigenen Buffer vorhält.
Wenn das sehr oft passiert (z.B. wenn der Server sehr lange läuft) werden dann irgendwann der Speicher oder die ClientIDs knapp ?
Gibt es die Möglichkeit eine Verbindung durch den Server so zu beenden, daß die Verbindung wirklich frei wird ?
Neben einer Timeout-Variante schwebt mir noch die Variante vor, daß der Server die Verbindung nach einer abgeschlossenen Aktion beendet.
edit :
OK, RTFMC (Read The Fucking Manual Carefully) -> CloseNetworkConnection() geht auch beim Server.
2.)
Woran erkennt der Server eigentlich eine bestehende Verbindung ?
Ich bastle gerade an einem FTP-Server den ich als Netzlaufwerk anspreche (Verknüpfung mit Webodner oder FTP-Site erstellen).
Wenn ich mehrere Windows-Explorer-Fenster auf habe bekommen die meistens die gleiche ClientID.
Wenn ich aber ein anderes Programm nutze (z.B. Wordpad -Datei-öffnen) bekomme ich eine andere ClientID.
Schließe ich Wordpad und probiere es noch einmal bekomme ich die gleiche ClientID.
Daß ständig wechselnde ClientIPs erscheinen geht mir noch in den Kopf (zumindest vermute ich die Ursache bei meinem Router).
Die Vergabe von ClientIDs bzw die Erkennung von "bestehenden" Verbindungen kann ich aber nicht nachvollziehen.