> That's true, however it does not solve the main problem with timers
> in ICS. The general problem with timers (beside the question which
> window to use) is that they are a limited resource.

As far as I know, timer are no more a limited resource sinceW2K.

> If we want support
> of "timer per instance" we have to take into account that:
>
> 1.) Win9x allows 32 timers systemwide only.
> 2.) WinNT supports 16 timers per process only.
> 3.) Maximum size of a thread's message queue is limited (default 10000).
>
> In W2K and above it's possible to create thousands of timers (I stopped
> testing at 10000 yesterday). However if we want support for "timer per
> instance" in older OSs as well we have to emulate this capability somehow.

Is it really needed ? The problem will - IMO - occur only at server side and
only when something large is implemented. And no one today would use
anything below W2K for server. And if they want to use an older machine,
maybe they would themself solve the problem provided ICS provide a mechanism
to replace the [yet to be designed] buildin timer.


> There are components around (like TTimerList of RX-Library) promising to
> work around those limits. But they are slow. Such a timer list utilizes
> a single Windows timer set to the shortest interval of all registered
> timer-events. When the timer fires it looks up and triggers registered
> timer-events as needed. The procedure of adding/removing events is slow
> as well and may cause delay if the timer interval must be reset. Also
> such a global timer list must be thread-safe which slowed down performance
> again. If you think we need such a 'polling beast' in order to work around
> limits of older OSs, we should write a faster and smarter one that could
> i.e. use an AVL-tree to manage its list of timer-events.
>
> What do you think?

As stated above, by first opinion is simply to ignore older OS.
Shouldn't we clearly ask the ICS community what OS they are using for their
large scale servers ? Then we can better design the best solution.


Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
Author of ICS (Internet Component Suite, freeware)
Author of MidWare (Multi-tier framework, freeware)
http://www.overbyte.be

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