Messages in this thread | | | Subject | Re: connect() to localhost non-blocking. | From | Doug McNaught <> | Date | 21 Oct 2001 17:00:18 -0400 |
| |
Patrick Mau <mau@oscar.prima.de> writes:
> I wrote a little test program to do some poll() benchmarks. > I changed the host address to localhost and observed that > connect() always returns EINPROGRESS when used with non-blocking > sockets. > > >From the man page: > > EINPROGRESS > The socket is non-blocking and the connection cannot be completed > immediately. It is possible to select(2) or poll(2) for completion by > selecting the socket for writing. > > So my question is: > > What is meant by 'cannot be completed immediately' ? > I thought that connections to localhost would complete > without any delay when the application listens ?
Probably the accept()ing process hasn't been scheduled yet. EINPROGRESS is a perfectly reasonable response in such a case.
-Doug -- Let us cross over the river, and rest under the shade of the trees. --T. J. Jackson, 1863 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |