not acked.
-- 
#ken    P-)}

Ken Coar                    <http://Golux.Com/coar/>
Apache Software Foundation  <http://www.apache.org/>
"Apache Server for Dummies" <http://Apache-Server.Com/>
"Apache Server Unleashed"   <http://ApacheUnleashed.Com/>

ApacheCon 2001!
Four tracks with over 70+ sessions. Free admission to exhibits
and special events - keynote presentations by John 'maddog' Hall
and David Brin. Special thanks to our Platinum Sponsors IBM and
Covalent, Gold Sponsor Thawte, and Silver Sponsor Compaq.  Attend
the only Apache event designed and fully supported by the members of
the ASF. See more information and register at <http://ApacheCon.Com/>!



Hi,

I know that you guys are probably working on this right now and
maybe Apache is already this way ... I'm not sure. So just in case,
this is an idea I thought I'd share (in faith of the open source
community).

The idea is pretty simple: instead of dedicating one thread for
each request, it might be more efficient to use 'undedicated'
threads. Any thread can serve any client. While a thread is waiting
for a read or write to a socket, for example, it can just jump to
serve other incoming requests. Any other thread can take over
whenever it's doing nothing.

I'm working on this idea at the moment but due to my work load, I
haven't come up with anything useful so I can't make any
contribution (I'm an old lousy C programmer anyway). The idea
appears to be applicable though.

Keep up the good work guys. You're #1! :-)
Marc K. 
(from a far country, Indonesia)



Well, maybe this stupid little thing ...

// One of my old dirty trick to get the month very quickly.
// It doesn't care whether or not it's spelled correctly. As long
// as the start is unique!

int ka_strtomon(const char *s)
{
 char a, b, c;
 if ((a = ka_lochar_(*s++)) == 0) return -1;
 if ((b = ka_lochar_(*s++)) == 0) return -1;
 if ((c = ka_lochar_(*s))   == 0) return -1;
 switch (a) {
   case 'j' : return (b == 'a') ? 0 : (c == 'n') ? 5 : 6;
   case 'f' : return 1;
   case 'm' : return (c == 'r') ? 2 : 4;
   case 'a' : return (b == 'p') ? 3 : 7;
   case 's' : return 8;
   case 'o' : return 9;
   case 'n' : return 10;
   case 'd' : return 11;
 }
 return -1;                      
}



Reply via email to