Thread Ausgabe vom Server wird nicht richtig abgeholt (9 answers)
Opened by Echelon1010000 at 2005-07-08 12:34

Echelon1010000
 2005-07-08 13:16
#56074 #56074
User since
2005-06-29
18 Artikel
BenutzerIn
[default_avatar]
Hi

Danke für deine Tip :) Ich hatte sowas vermutet, wusste aber nicht das er die 512 auch zeilenübergreifend liest. Und, was noch wichtiger ist: Ich wusste nicht wie ich sonst lesen soll.

Ich hab den Vorschlag mit "getline();" übernommen und teste es jetzt. Sobald ich Bescheid weiss geb ich Rückmeldung, wird aber eine Weile dauern, der Fehler tritt immer erst nach einer ganzen Weile auf, eben wenn zufällig zwei Nachrichten warten und auch so abgeholt werden wie oben beschrieben. Das Programm läuft jetzt erstmal testweise.

Zu den Rückgabewerten: Ich hatte ursprünglich nur Zahlen ( 1 und 0 ) zurückgegeben und keine grossartige Fehlerbehandlung eingebaut. Das kam später erst als das Programm vom kleinen Script zum Projekt "gewachsen" ist. Zur Fehlerkontrolle reicht es im Prinzip auch, einen String muss ich ja nur zurückgeben wenn es etwas zu melden gibt (Fehlermeldung).  Ich könnte natürlich return 1; zu return "1"; machen hielt das bis jetzt aber nicht für sinnvoll. Wahrscheinlich werde ich aber unter dem Aspekt "sauberer Code" dazu übergehen jeweils die Antwort zu übergeben.

Das Problem ist hier das es etwa zwanzig subs gibt die von rund 10 verschiedenen Modulen aufgerufen werden die sich jeweils in einem eigenen Childprozess befinden. Für jedes Modul existiert ein eigener Socket damit die Module ihre Daten möglichst schnell absetzen können und sich beim Schreiben und Antwortlesen nicht in die Quere kommen. Ich kann also die Fehlerbehandlung nicht direkt in dieser Sub lösen.
Zu den Modulen und Sockets vergleiche auch mein Post von letzter oder vorletzte Woche "Sockets verwalten". Eine Rückgabe von "1" für erfolgreiche Ausführung ist IMO zur Zeit im Entwicklungsstadium aber ausreichend.

Danke erstmal dazu :)

Gruss, Echelon

View full thread Ausgabe vom Server wird nicht richtig abgeholt