[Top][All Lists]
[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.