[lkml]   [2001]   [Jan]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: 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
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:04    [W:0.218 / U:0.276 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site