wiki:WikiStart

Version 6 (modified by rlaakso, 8 years ago) (diff)

--

NIO

NIO is a framework for non-blocking IO under Linux, FreeBSD and Mac OS X. See Homepage.

NIO-HTTPD

NIO-HTTPD is a simple nio-capable webserver, used for testing NIO.

Running

Anonymous checkout available via:

svn checkout svn://common-lisp.net/project/nio/svn

Various things

SIGPIPE on SBCL

Running on SBCL might generate SIGPIPE errors, this can probably be cured by inserting

 #+sbcl(sb-sys:ignore-interrupt SB-UNIX:SIGPIPE)

to some proper location.

Multithreading

NIO doesn't currently multithread. It could.

+ Would take advantage of SMP.

+ Could accept connections if the worker-thread is busy doing other things (?).

  • Complicates things (i.e. requires data structure locking, et al)

hashtable on ACL

NIO-HTTPD looks up pages from hash-table, but this doesn't work in ACL for some reason. (Hashtable is 'equalp, and the keys are octet-vectors)