Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mo Jul 14, 2025 19:44

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 26 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 20:33 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hi,

ich bekomme laufend (Ok, ab und an mal...) diese Fehlermeldung:

Bild

Ich hab absolut keine ahnung woran das liegt, denn 9 von 10 mal kommt sie nicht...

Ich kann mir das nur so erklären das z.B. der Client was anfragt und dann mit ReadLN auf das ergebniss wartet, dieses aber nich schnell genug bekomtm da der Server ausgelastet is oder sonstwas...

Kann ich da irgendwas gegen machen???

Einfach nur mit Try-Except unterdrücken möchte ich diese Meldung keinesfalls!..

*guckt hilflos*

Au'revoir,
Aya~

PS: Geht um Indy TCP/IP Server + Client


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 21:57 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
TimeOuts setzen... habe ich mal gehabt, da fing der server an über 5 Minuten ne Hash einer Datei zu generieren, worauf die clients gelangweilt die verbindung getrennt haben und der server dann geheult hat, weil niemand mehr mit ihm sprechen wollt. Ergo vor solche langen Operation des Timeout erhöhen und hoffen, des man glücklich wird?

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:06 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Wie erhöh ich denn das Timeout??? *guckt unsicher*


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:09 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wenn das mit dem Erhöhen des Timeouts nicht klappt, dann würde ich an deiner Stelle zu jedem verbundenen Client permanent ein Keep-Alive-Signal schicken, so daß dieser die Verbindung nicht kappt.
Dazu musst du ja nichts weiter tun, als vom Server aus alle paar Sekunden irgendein Datenpacket an den Client zu senden, so dass dieser realisiert das am anderen Ende der Server noch "lebt".Das machen AFAIK z.B. viele FTP-Programme so, damit die Verbindung nicht gekappt wird falls der User längere Zeit nichts tut (hier geschiehts halt nur in der anderen Richtung vom Client zum Server).

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:19 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
TCPClient.TimeOut? evtl. receivetimeout? Server the same

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:22 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Phobeus hat geschrieben:
TCPClient.TimeOut? evtl. receivetimeout? Server the same

mhh... das einzige was ich gefunden habe, was etwas mit Timeout zutun hat is "ReadLnTimedOut"... aber das is was anderes :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:52 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Stichwort: Readtimeout

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:53 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
mhh... haben wir verschiedene Jedi versionen oder so...???
Bei mir gibt's kein ReadTimeOut :/


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 22:57 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
TIdTCPConnection.ReadTimeout

Auszug aus der Hilfe dazu :
Zitat:
Indicates the milliseconds to wait for a readable connection.

property ReadTimeout: Integer;

Description

ReadTimeout is an Integer property that indicates the number of milliseconds that the connection should wait for the peer connection to become readable using the protocol stack.

ReadTimeout is used in ReadFromStack.


Ob das dein Problem löst wage ich allerdings zu bezweifeln (lass mich allerdings gerne eines Besseren belehren).Probiers mal mit dem Keep-Alive-Signal das ich erwähnt habe...

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 23:01 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
mhh...

welche Indy Version habt ihr??? (bzw, wo bekomm ich'n die neueste???)
Das ReadTimeout gibt es bei mir net :|

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 23:04 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Der Auszug oben stammt aus der Hilfe zu Version 9 der Indykomponenten.Die neuste Version ist 10(beta), allerdings wird diese (noch) nicht offiziell unterstützt.Die Projekthomepage findet sich hier : <a href='http://www.nevrona.com/Indy' target='_blank'>http://www.nevrona.com/Indy</a>

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 23:12 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Ach.. bei mir gibt's im Server.OnExecute event den ReadTimeout..

Code:
  1. procedure TForm1.dExecute(AThread: TIdPeerThread);
  2. begin
  3.  &nbsp;AThread.Connection.ReadTimeout
  4. end;


meintet ihr den???

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jun 09, 2003 23:18 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
So, nu habbi V9 Installiert, da hab ich es jetzt auch beim Client :)

Hab das Timeout nu auf 5000 gestellt, jetzt kommt die Fehlermeldung nemmer *grinst fröhlich*

Danke

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jun 10, 2003 07:40 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
mhh... ganz 100%ig weg ist die meldung immernochnet ... :(

Ab und zu kommt sie noch *seufzt*

An so nem Datenpacket kann es auch nicht direkt liegen, denn die Verbindung wird aufgebaut, daten werden hin und hergeschickt und dann wird sie wieder getrennt...

ca. so:

Code:
  1. //Client
  2. Client.Connect;
  3. Client.WriteLN('GibKundenListe');
  4. for i:=0 to Client.ReadInteger do
  5.  &nbsp;Client.ReadLN;
  6. Client.Disconnect;
  7.  
  8. //Server:
  9. with AThread.connection do...
  10.  &nbsp;Server.ReadLN;
  11.  &nbsp;//Befehl wird verarbeitet.. also z.B. stellt er ne Kundenübersicht zusammen o.Ä.
  12.  &nbsp;Server.WriteInteger(x); //Die anzahl der zeilen die folgen
  13.  &nbsp;for i:=0 to x do
  14.  &nbsp; &nbsp;Server.WriteLN(...);
  15.  &nbsp;Disconnect;
  16. end;


Hilfe~

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jun 10, 2003 07:47 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Kannst du denn einen Hardwarefehler 100%tig ausschließen?
Das Problem hatte ich woanders auch schon mal. Da hatte die Netzwerkkarte einen Schuß und hat für kurze Zeiten mal die Vebindungen getötet. Was dafür gesogt hatte, dass die Anwendung abgesemmelt ist. Tritt das Problem denn nur bei einem Rechner auf?


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 26 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]