add sigio support

extend code to cope with edge triggered event notification
add io_eagain() so that you can notify io_wait if accept() returned EAGAIN
This commit is contained in:
leitner
2003-09-12 22:03:51 +00:00
parent 5a4d2cc732
commit 2a2e1ddc75
15 changed files with 262 additions and 32 deletions

View File

@@ -42,6 +42,12 @@ int64 io_trywrite(int64 d,const char* buf,int64 len) {
}
if (r==-1 || r==0) {
e->canwrite=0;
#ifdef HAVE_SIGIO
if (d==alt_firstwrite) {
debug_printf(("io_trywrite: dequeueing %ld from alt write queue (next is %ld)\n",d,e->next_write));
alt_firstwrite=e->next_write;
}
#endif
e->next_write=-1;
}
return r;