Robert Chafer wrote:
> Hi
> 
> When I use TWSocket based components and they do an async operation,
> does the operation actually happen on a separate thread and then the
> results get sent via a message to the calling thread?

ICS components do not create threads. The components and events are
executed in the thread context where the components have been
created. Async behaviour is achieved by calling non blocking
winsock API which uses messages sent to a hidden window in order
to notify the application about winsock events. In ICS V5 each
TWSocket instance creates its own hidden window, in V6 any instances
in the same thread share a single hidden window.

---
Arno Garrels [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
  

> 
> My reasons for asking is that is how ADO works, if you perform an
> asynchronous execute, it is done on another thread.....  I have an app
> that uses the smtp client and ADO. There is a (very) subtle bug in ADO
> that means ADO async threads sometimes hang when they are released.
> This happens about one time in 100,000 calls (by hang I mean they do
> not return -- the app still runs as they are in a message loop).   To
> get around this I have some code that looks at the threads running,
> spots long running threads and kills them. It works, however it upsets
> TWSocket operations and I think I may be killing a TWSocket thread...
> so is there a way to find out the threads used by TWSocket?
> --
> 
> Rob Chafer
> Silverfrost
-- 
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

Reply via email to