[De-Nut-Discussion] AW: Geschwindigkeits problem?

de-nut-discussion-admin at egnite.de de-nut-discussion-admin at egnite.de
Tue Sep 23 13:39:47 CEST 2003


Hallo,

Wieso sollte ich eine Wartezeit einbauen?
Die _read()-Funktion wartet so lange bis etwas Empfangen wird.

/*
 * The low level function read() will grab all available bytes
 * from the input buffer. If the buffer is empty, the call will
 * block until something is available for reading.
*/

Daher wäre eine Wartezeit unnötig.

Nichts desto trotz, bleibt er beim read() hängen, sodass ich stark vermute
das er zu langsam ist um nach dem Senden noch was zu Empfangen....

MfG,
Manuel Mausz

-----Original Message-----
From: de-nut-discussion-admin at egnite.de
[mailto:de-nut-discussion-admin at egnite.de]
Sent: Tuesday, September 23, 2003 12:30 PM
To: de-nut-discussion at egnite.de
Subject: [De-Nut-Discussion] AW: Geschwindigkeits problem?


Hallo Manuel,

ich setze den Webserver seit einiger Zeit ein und habe keine
Geschwindigkeitsprobleme. Bei Deinem Beispielcode fällt mir auf, dass keine
Reaktionszeit vorgesehen ist, damit die Nachricht wirklich und die Antwort
empfangen werden kann, z.B.:

[...]
    Rs485enableTx();
    _write(_fileno(uart2), thisStream.Stream, thisStream.ByteCount+8);
// hier muss sichergestellt sein, dass die Übertragung abgeschlossen ist,
bevor der RS485-Sender abgeschaltet wird,
// sonst sind die gesendeten Zeichen eventuell gestört
    Rs485enableRx();
// Hier muss eine Wartezeit eingehalten werden, um die Nachricht zu
empfangen, sonst ist der Empfangspuffer leer
    buf = _read(_fileno(uart2), inbuf, 1);
[...]

Vielleicht reicht das ja schon

MfG
Robert Hildebrand

_______________________________________________
De-Nut-Discussion mailing list
De-Nut-Discussion at egnite.de
http://www.egnite.de/mailman/listinfo/de-nut-discussion




More information about the De-Nut-Discussion mailing list