Hello João,

No,  Put  only the main TWSockerServer into a separated thread, that's
all,  this  is if your applicationis not a service and has a graphical
interface  (one  or  more  windows), so even if you have hudge network
activity, your buttons/menus in your forms will stay responsive.

Making  one  thread  per  client  is  non-sense using asynchronous ICS
model.

But  eventually, you may create some worker thread or temporary thread
that  will  proceed some longer requests without queueing for too long
time all other events ICS sockets will receive.

Regards.

JG> OK, let me se if I understood
JG> The best option is to take the TCpSrv example from ICs, put it on a new
JG> Thread, and create a new Thread for each client, like the example on the
JG> MtSrv?
JG> Is this line of thinking correct?
JG> Thanks once more
JG> João

JG> -----Original Message-----
JG> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
JG> Behalf Of Dod
JG> Sent: sábado, 5 de Abril de 2008 8:45
JG> To: ICS support mailing
JG> Subject: Re: [twsocket] small but pertinent doubt

JG> Hello João,

JG> One  more  thing,  I recommend you to create the TWSocketServer into a
JG> separated  thread  just  to  avoid  your  appplication interface to be
JG> overloaded/non responsive in case of hudge activity.

JG> You  can  also  dettach  some client sockets and attach them into some
JG> separated  thread if they may take longer time to execute (for exemple
JG> long database request or disk file activity).

JG> As ICS uses an event driven model this permit to manage very easy tons
JG> of  connections  but  you  must  be responsive and make each triggered
JG> event  finish  as  fast  as possible or the next event (for exemple an
JG> other OnDataAvailable for other client) will have to wait.

JG> You may also create some worker thread that you can send thoses longer
JG> operation the release the event faster.

JG> Regards.

JG>> Hello,
JG>> Jus tone more thing: can youn point me to that example? I can't seem to
JG> find
JG>> it:-(
JG>> Thank you,
JG>> João

JG>> -----Original Message-----
JG>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
JG> On
JG>> Behalf Of Wilfried Mestdagh
JG>> Sent: sábado, 5 de Abril de 2008 0:38
JG>> To: ICS support mailing
JG>> Subject: Re: [twsocket] small but pertinent doubt

JG>> Hello João,

JG>> As far as I recall is mtSrv an older example with a listening TWSocket
JG>> and creating data-TWSockets for the clients. So the example with
JG>> TWSocketServer is the way to go.

JG>> TWSocketServer is not multithread because it is not needed. It can
JG>> handle thousands of connections in main thread. But if you want you can
JG>> make separate thread for each client or for groups of clients if you
JG>> have for example lengthy code to execute. There is an example with
JG>> TWSocketServer also multitrheaded.

JG>> ---
JG>> Rgds, Wilfried [TeamICS]
JG>> http://www.overbyte.be/eng/overbyte/teamics.html
JG>> http://www.mestdagh.biz

JG>> Friday, April 4, 2008, 22:45, João Gonçalves wrote:

>>> Hello, thank you for the answer
>>> In the application that I developed, taking the base of TcpSrv, I use
>>> TWSocketServer, 2 questions:
>>> - Is this multithread?
>>> - Is it better than MtSRv?

>>> Thank you
>>> João 

>>> -----Original Message-----
>>> From: [EMAIL PROTECTED]
>>> [mailto:[EMAIL PROTECTED] On
>>> Behalf Of Wilfried Mestdagh
>>> Sent: sexta-feira, 4 de Abril de 2008 8:29
>>> To: ICS support mailing
>>> Subject: Re: [twsocket] small but pertinent doubt

>>> Hello João,

>>> Use TWSocketServer component wich handles all clients by itself. There
>>> are some example files.

>>> ---
>>> Rgds, Wilfried [TeamICS]
>>> http://www.overbyte.be/eng/overbyte/teamics.html
>>> http://www.mestdagh.biz

>>> Thursday, April 3, 2008, 23:17, João Gonçalves wrote:

>>>> Hello,
>>>> I developed an application in C++ Builder, based on the example TcpSrv.
JG>> It
>>>> works very well, for a single client. I’m now trying to use several
>>> clients,
>>>> looking to the documentation, ICS has 2 examples: MtSrv and TnSrv, they
>>>> booth say that this should  be used for a real world server. My question
>>>> (doubt) is: what is more suitable to use?
>>>> Thank in advance
>>>> João 


>>> -- 
>>> 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


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


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


-- 
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