Hello Arno Garrels and...

Special Hello to Francois Piette! Please look at the "@Francois Piette" 
at the end of this mail!
>> This is exactly the point! I just don't get who reads the data, but
>> there is defintively
>> something reading all the available data (into a buffer?)!
>> Later I see
>> the data flowing
>> through the "WSocket_Synchronized_recv": So I think it can only be
>> Winsock who
>> is buffering, cause the actual data reading call is "FRecv" which is a
>> Winsock function!
>> Am I right at this?
>>     
> Yes, that's correct.
>   
Ok, this proves that Winsocks is buffering megabytes of data before
"TWSocket.pause" becomes active!
>> For your information: I have beside the GUI two threads: One server
>> and 
>> one client
>> thread. Hmmm... Delphi does stop all threads if I am at a breakpoint,
>> doesn't it?
>>     
> Yes, that's correct.Do you use LineMode? I do not think so but should be 
> asked anyway.
> If LineMode is turned on the component indeed buffers data internally.
>   
No, I don't!
> Hmm, should you realy use LineMode the set a breakpoint in (OverbyteIcs)
> WSocket.pas:
> function TCustomLineWSocket.TriggerDataAvailable(ErrCode : Word) : Boolean;
> At the line where Receive is called.
>
> If you do not use LineMode winsock is most likely the reason.
> Or maybe you have you increased the default Socket receive buffer size,
> property SocketRcvBufSize?
>   
I am not using LineMode. If you look at TriggerDataAvailable you'll see 
that it never
gaves the DoRecv in AsyncReceive a change to read. So I think it is 
proved that the
problem is in Winsock, do you also think so?

@Francois Piette: If I send you a proved example, is there any chance to 
geht this
issue fixed?

Much regards,
Markus Mueller

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to