-
Notifications
You must be signed in to change notification settings - Fork 18k
net: setting read deadline affects write deadline, and vice verse (on windows) #4195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
Comments
Some systems will be fixed by http://golang.org/cl/6604072. Alex |
This issue is resolved for system that have CancelIoEx API (as per http://goo.gl/Kuwlz "... Windows Vista and up ..."). TestReadWriteDeadline that tests the issue is disabled for other systems. I have no proposal to fix the issue completely. Alex |
Yes, this is still broken, but only on systems that do not have CancelIOEx API. There we have no choice but to use CancelIO that cancels ALL IO. I don't know any better way of dealing with it. But, given that we have less and less systems like that, I cannot see this as been important. So feel free to do what you like with this issue. Alex |
OK, let's just remove it from release line (Go1.2) and make Priority-Someday It seems to be relatively easy to fix, but hard to test, and only affects old OSes, and only affects "non-typical" network programs that use different deadlines for reads and writes. If somebody wants to fix this, you are welcome. Labels changed: added priority-someday, removed priority-later, go1.2maybe. Status changed to WontFix. |
CancelIo "Cancels all pending input and output (I/O) operations that are issued by the calling thread for the specified file. The function does not cancel I/O operations that other threads issue for a file handle". If you have a thread that issues all read operations, and another thread that issues all write operations, then you can cancel read and write operations separately with CancelIo. That's exactly what we need. We have at most 1 pending read and at most 1 pending write, so we do not need finer granularity of cancel. |
Please, review https://golang.org/cl/12960046/. Alex Status changed to Started. |
This issue was closed by revision 11320fa. Status changed to Fixed. |
This issue was closed.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
The text was updated successfully, but these errors were encountered: