Andrew Kuchling writes: > (At the very highest end, even poll() begins to scale badly since you > list "all the open fds", not "all the open fds which have activity". > At that point you're supposed to switch to async I/O, but probably > you'd have switched from Python to C long before that point.) Lots of good info on these issues is available here: http://www.kegel.com/c10k.html Linux and FreeBSD are growing new kernel-event-delivery mechanisms that promise better scalability and efficiency. Win32's had it from the beginning. For the eGroups coroutine scheduler ( http://www.egroups.com/group/python-coro ) I wrote a more efficient poll wrapper, but it's also very bare. Might be a starting point. This stuff hasn't been used yet, so the driver module has fallen way behind. Compare coro2.py to 'coro.py' in the egroups coro dist. http://www.nightmare.com/stuff/coro_poll.c http://www.nightmare.com/stuff/coro2.py In coro_poll.c, there's a single struct pollfd array, that should probably be PyObject-ified. -Sam
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4