-
Notifications
You must be signed in to change notification settings - Fork 41
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
Server started from Windows Explorer blocks on input #850
Comments
We don't install such a shortcut, so can't reproduce without additional instructions -> closing. |
This looks like the debugging build for #824. How did you start the server? |
I doubleclicked And yes, the screenshot is from the build from #824, but just before that I tried it on ...1112, exactly the same result. |
That's why it's better to file issues yourself, I got it wrong and couldn't reproduce 😉 |
On Windows, there is apparently no unified non-blocking API to wait for input on stdin. Thus, call the blocking API from a worker thread. Tested the following use cases: * Starting from the Windows console * Starting from Windows Explorer (should be the same, but who knows) * Starting from the client (I guess stdin is a named pipe in this case) * Starting from the MSYS console (no idea what it uses, maybe a file) The thread is only used on Windows, no reason for the extra overhead to propagate to sane OSes. Closes longturn#850.
Right, sorry :) I didn't file an issue because I didn't think it was important. But it's probably important for general functioning of the software. I'll keep it in mind for the next time. |
On Windows, there is apparently no unified non-blocking API to wait for input on stdin. Thus, call the blocking API from a worker thread. Tested the following use cases: * Starting from the Windows console * Starting from Windows Explorer (should be the same, but who knows) * Starting from the client (I guess stdin is a named pipe in this case) * Starting from the MSYS console (no idea what it uses, maybe a file) The thread is only used on Windows, no reason for the extra overhead to propagate to sane OSes. Closes longturn#850.
On Windows, there is apparently no unified non-blocking API to wait for input on stdin. Thus, call the blocking API from a worker thread. Tested the following use cases: * Starting from the Windows console * Starting from Windows Explorer (should be the same, but who knows) * Starting from the client (I guess stdin is a named pipe in this case) * Starting from the MSYS console (no idea what it uses, maybe a file) The thread is only used on Windows, no reason for the extra overhead to propagate to sane OSes. Closes #850.
Describe the bug
Apparently we still have this bug.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Client seamlessly detects the server and connects.
Platform and version (please complete the following information):
Additional context
The server event loop is blocked waiting for input on stdin. Move input to a thread.
The text was updated successfully, but these errors were encountered: