Shail Bhatnagar <[EMAIL PROTECTED]> writes:
> I have observed that sometimes select()
> returns a positive value to one or more processes
> but only one is able to read UDP data.
On every system I know of, select() wakes up every process/thread
selecting on the same descriptor (e.g., UDP socket) when the condition
is met (e.g., a datagram is ready to read).
You'll want to use a mutex to ensure that only one process is in the
select()+recvfrom() path at a time. Otherwise, the extra wakeups will
hurt performance.
But Apache already does this when there are multiple listening (TCP)
sockets. Take advantage of that mutex.
> The server is this case has been modified
> to listen on a well known udp port.
>
> Does anybody have any clue ? The errno returned
> by recvfrom() is 11 - resource temporarily unavailable.
>
> Secondly, is there a know crash on Solaris when
> APR_HAS_THREADS is on. This is about httpd 2.0.16 beta.
Justin Erenkrantz fixed a gethostbyname() issue with a threaded build
on Solaris < 8. You may wish to try the latest code from CVS.
--
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
http://www.geocities.com/SiliconValley/Park/9289/
Born in Roswell... married an alien...