Noblock is nonsense.
This commit is contained in:
parent
c4097c2951
commit
30387d7ba6
1 changed files with 0 additions and 19 deletions
|
|
@ -8,7 +8,6 @@
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
|
||||||
#define debugpoll 0
|
#define debugpoll 0
|
||||||
static int noblocked[4096/32];
|
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
|
@ -228,25 +227,7 @@ threadsleep(int ms)
|
||||||
void
|
void
|
||||||
threadfdnoblock(int fd)
|
threadfdnoblock(int fd)
|
||||||
{
|
{
|
||||||
Thread *t;
|
|
||||||
|
|
||||||
if(fd<0)
|
|
||||||
return;
|
|
||||||
if(fd < 8*sizeof(int)*nelem(noblocked)
|
|
||||||
&& (noblocked[fd/(8*sizeof(int))] & (1<<(fd%(8*sizeof(int))))))
|
|
||||||
return;
|
|
||||||
t = _threadgetproc()->thread;
|
|
||||||
if(t && t->lastfd == fd)
|
|
||||||
return;
|
|
||||||
fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0)|O_NONBLOCK);
|
fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0)|O_NONBLOCK);
|
||||||
if(t)
|
|
||||||
t->lastfd = fd;
|
|
||||||
|
|
||||||
/* We could lock this but we're probably single-threaded
|
|
||||||
* and the worst that will happen is we'll run fcntl
|
|
||||||
* a few more times.
|
|
||||||
*/
|
|
||||||
noblocked[fd/(8*sizeof(int))] |= 1<<(fd%(8*sizeof(int)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
long
|
long
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue