Messages in this thread |  | | Date | Sat, 20 Jan 2001 22:58:10 +0100 | From | Edgar Toernig <> | Subject | Re: PROBLEM: select() on TCP socket sleeps for 1 tick even if data available |
| |
Michael Lindner wrote: >[...] > send(s, ".", 1, 0); >[...] > while (select(r+1, &readfds, 0, 0, 0) > 0) { >[...] >[select returns only after about 1 HZ]
Ever heard of nagle? (If not, there's a long thread about it on the mailing list *g*)
It's not the select that waits. It's a delay in the tcp send path waiting for more data. Try disabling it:
int f=1; setsockopt(s, SOL_TCP, TCP_NODELAY, &f, sizeof(f));
Ciao, ET.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |