Francois PIETTE wrote:
>>>>> In my option a real ICS multi-listening server should handle all
>>>>> client objects in one list. These client objects should be aware
>>>>> of what listening socket accepted them.
>>>> 
>>>> That is a good idea.
>>>> 
>>>>> This is not possible to achive
>>>>> with current TWSocketServer design.
>>>> 
>>>> I wouldn't be so sure.
>>> 
>>> In the meanwhile I think I got the idea. A new very small class
>>> "TWServerSocket" that is instantiated and registered by the
>>> TWSocketServer for each new listening socket.
>>> "TWServerSocket.Listen" calls WSAASyncSelect with TWSocketServer's
>>> window handle. 
>> 
>> Small change, not a small new class but a TWSocketServer and
>> currently I override WMASyncSelect and Accept, works like a charm.
>> The MultiListenSockets are a TCollection descendant so accessible in
>> OI 
>> as well. The only limit is that they (the additional listening
>> sockets) must run in the same thread context as their owner
>> TWSocketServer. 
>> If that wasn't the case an assertion is raised.
> 
> The idea of a small class is a good idea altough it defenitely force
> al events to be shared between all listening sockets. That's not a
> problem imo but you raised the issue previously.

Back to the keyboard then. I think a found a way everybody can live
with. Will commit this new attempt to the IPv6 branch when I think 
it's alpha-ready. Then we are able to continue the discussion based
on an existing implementation.

-- 
Arno Garrels   

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