--- Corinna Vinschen wrote:
> On Mar 30 01:03, Patrick Samson wrote:
> > >From msdn:
> > "All I/O operations that are canceled will
> complete
> > with the error ERROR_OPERATION_ABORTED. All
> completion
> > notifications for the I/O operations will occur
> > normally."
> 
> Urgh, I mised that.
> 
> > What's your feeling about:
> > if (!CancelIo ((HANDLE) socket))
> >   {...}
> > else
> >   {
> >    if (WSAGetOverlappedResult (socket, &ovr, &len,
> >  FALSE, flags) && len != 0)
> >     ret = (int) len;
> >    else WSASetLastError (WSAEINTR);
> 
> Did you try it?

Yes. It worked.
I ran my test case this night for 30000 runs.

> Yesterday I changed Cygwin to use
> asynchronous I/O
> instead of overlapped I/O so it now can do without
> CancelIo.
> However, two people reported hangs which don't occur
> for me.  If
> if takes too long to track down, I guess I'll revert
> to overlapped
> I/O plus your patch.  But I would be more happy with
> a working
> async I/O solution.

Is it still worth?


__________________________________
Do you Yahoo!?
Yahoo! Small Business $15K Web Design Giveaway 
http://promotions.yahoo.com/design_giveaway/

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Reply via email to