Hi Erich
Thanks for your reply, at least I'm not the only one.
I did find a workaround though, which was not to close the sockets in the
OnSessionClose event but I HAD to close the socket in the OnClientDisconnect
event of the Listener, before I freed the client object.
It appears that when a client disconnects, the OnSessionClose and the
OnClientDisconnect events don't always get called in the same order and the
state of the Socket isn't always consistantly closed. By forcing a close in
the OnClientDisconnect event seemed to make it more stable.
I am interested in getting this working and will help where I can, as I have
based my new project on this component.
BTW, if anyone is interested I have written a simple wrapper around TWSocket
and TICSocket so that I can compile my project for both windows and linux
(with the same code base) using CrossKylix on Delphi 2005.
Hi Peter,
I had similar experiences and had to delay my Linux implementation. I
have
wanted to review the Kylix code and try and fix it as I think that this
will
add huge value to everyone here, myself included. I think that I know
where
to start looking for these problems. In short the Kylix implementation
uses
threads heavily and it's not synchronizing correctly. I have allocated
time
in March and April this year to sort this out so if you can wait until
then,
then we may have a fix. If you are willing to get involved in the
process,
please let me know. I did look for volunteers some time ago, but only got
a
few responses from people saying that they could provide high level input.
Regards
Erich Kuba
-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Peter Slater
Sent: Thursday, 12 January 2006 12:40 p.m.
To: twsocket@elists.org
Subject: [twsocket] TIcsSocket - Socket.Close locks up - 99% CPU
Hi
I am having a problem with the kylix version of ICS at the moment. It is
a console tcp/ip server app running on linux. It accepts connection from
clients and sends data to each of the clients. The problem is when the
client disconnects, My program runs at 99% CPU and the loop is in the
IcsSocket.Close method.
When the client disconnects, the SockServerClientDisconnect is triggered
which frees my client object that was created in the
SockServerClientConnect event. In the destroy of my client object I
close the IcsSocket by calling Close.
If Socket.State = wsConnected then
Socket.Close;
It is here that there is problem
because the IcsSocket.close function never returns.
I know there are worker threads involved so it could be related to my
main thead loop which is shown below.
while not bTerminating do begin
CheckSynchronize(1);
end;
p.s. I am running the ics-kylix beta 4.
Any Ideas would be appreciated
Peter
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be
--
Message: 11
Date: Thu, 12 Jan 2006 14:52:45 -0600
From: Jim Schultz [EMAIL PROTECTED]
Subject: [twsocket] Newbie- Telnet SSL with zmodem transfer
To: twsocket@elists.org
Message-ID: [EMAIL PROTECTED]
Content-Type: text/plain; charset=us-ascii
sorry but wasn't sure how to post back to the list and keep it in the
correct thread, if this is incorrect let me know.
you would just have to add the zmodem protocol on top, which you can find
for free on the internet,
it's part of the Turbopower Async Pro package. Just sent the data as
TCP/IP
packets instead of async packets.
i do have asynch pro and have used it before turbopower quit, but only for
serial connections not tcp stuff. its the last part - instead of async
packets that i have no clue about. how do you make async packets into
tcp/ip packets. i've searched the async list but can't find anything
there
to get me started.
tia.
Jim
--
___
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be
End of TWSocket Digest, Vol 151, Issue 7
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be