chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] poll(2) with chicken: works - sort of


From: Christian Kellermann
Subject: Re: [Chicken-hackers] poll(2) with chicken: works - sort of
Date: Mon, 14 May 2012 13:49:06 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Hi!

* Jörg F. Wittenberger <address@hidden> [120514 13:27]:
> Hi all,
>
> this is something, which might be worth to consider once the
> next Chicken release is out.

Looks interesting! Did you run this on other systems than Linux?  At
least on OpenBSD there is poll() but its man page states in the BUGS
section:

     The POLLERR and POLLWRBAND flags are accepted but ignored by the
     kernel.

     Because OpenBSD does not implement STREAMS, there is no
     distinction between some of the fields in the events and revents
     bitmasks.  As a result, the POLLIN, POLLNORM, and POLLRDNORM
     flags are equivalent.

     Internally to the kernel, poll() works poorly if multiple
     processes wait on the same file descriptor.

So while it is a must have if you have more FDs to wait on that the
maximum setting of your kernel allows, this might have different
impacts on different systems.

BTW, did you know that Linux will modify your timeout argument in
select()? News for me today...

Also a question to others: Do we have a supported system that is know
for not providing poll()?

As for the code, you are welcome to send me a diff of your code
against the master branch of chicken-core and I will try to integrate
it and do some testing on my side.

Thanks!

Christian

--
9 out of 10 voices in my head say, that I am crazy,
one is humming.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]