I've been trying to do some stuff with NetDemo, but really need the events for when I receive text from the client. Although I haven't exhausted every trick yet, I get the feeling it wouldn't be as efficient in the long run. It is already non-blocking which is more important to me than thread support as you can quite easily make a server-type app that serves many clients and still be single threaded, as long as you have event handling for when a client connects and sends, then you have an index of clients to distinguish them.
The curious thing about NetDemo is that it only relies on rtl and Linux units, not using the sockets unit what-so-ever. The problem I have is I just can't get my head around how to use it in my program quite yet
NetDemo can be seen at
http://skelet.hit.bg/srdb/NetDemo.htm and it does look great and work, I just haven't been able to make it do cool stuff in Lazarus yet.
I hope a component does happen some point, it would be pretty cool. If I had the time to spare and I was a little better at making components, I swear, I'd hve a damn good go at it, heh.