-
Notifications
You must be signed in to change notification settings - Fork 732
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
Windows support #10
Comments
I'm wondering if someone started to work on it ? And what is the plan? (nix-rust wrapper for windows ?) |
Hi, nobody has started on windows support yet. I have a high level plan for windows but haven't thought through the details yet. The general idea is to use IOCP and to have a shim layer that matches the IOCP API w/ the mio API. Anyway, if you are interested in attempting it, we should chat on IRC or something to get on the same page. |
Hi, |
This thread in reddit can be very interesting: http://www.reddit.com/r/rust/comments/2kv3y5/async_io/ Specifically on this post, it's shown that IOCP can be efficient on modern windows, and they provide a link to a minimal implementation http://www.reddit.com/r/rust/comments/2kv3y5/async_io/clqr8my I think this can be helpful when implementing the windows part. |
Can someone just try to implement the WSASelector method first, to measure It would be 100 times easier to match to the mio flow, since it's already It probably won't scale to managing 10,000 connections, but if someone
|
http://msdn.microsoft.com/en-us/library/windows/desktop/ms741669%28v=vs.85%29.aspx
|
Apparently, the trick found on the provided link allows to use IOCP in the same way as select, but it's much faster. They use select as a fallback for unsupported systems (< Vista ???). Anyway, it's not crear if the API used is supported, the code is WIP, and there is no license on the repo. But it might be worth it to have a look, because it can provide a fast and simple way to have windows support. Also, it's possible to implement the fallback with select first, and leave the optimization for future versions. |
Might be interesting: https://github.com/cyderize/rust-iocp |
I saw it few days ago but i think it will be harder to implement IOCP on a epoll based io library (than vice versa). |
Ok, this is a "won't fix". I think the best strategy is to dedicate mio to readiness based platforms and punt windows support to a higher level IO library (I am working on one, but it is still in the early stages). |
The readme still mentions windows support as 'eventually'. Should that be removed then? |
Ah, sorry, Windows support came back w/ #155 and is in progress: https://github.com/carllerche/mio/tree/windows-wip |
🎆 Hooray!!!! |
No description provided.
The text was updated successfully, but these errors were encountered: