
On Mon, 13 Sep 2004 13:36:32 +0200, Carlo Wood wrote
It seems unlikely to me that there are many cases were the limit would be exceeded. However, in those cases, I don't think it would be a problem if the multiplex user were required to create another thread, and another multiplex. I don't think the multiplex should do this.
Why not? This is what libACE does too; I am interested to hear why you think it is wrong.
Well ACE does 'several things' depending on how it is used. On windows it provides as default the WFMO (wait for multiple objects reactor) and there is also a 'select' reactor. The WFMO reactor is more performant on windows and hence is the default. However, ACE doesn't remove the 64 object limit in the WFMO reactor, so you can run into the wall if you aren't careful. Part of the problem is, if you have something that is bumping up on the 64 object limit you might not get the performance you need from the 'select' reactor. So the problem isn't 'solved' by ACE the way you might imagine... Jeff