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
[#2377] Implement epoll based DatagramChannel #2391
Conversation
Motivation: There is currently no epoll based DatagramChannel. We should add one to make the set of provided channels complete and also to be able to offer better performance compared to the NioDatagramChannel once SO_REUSEPORT is implemented. Modifications: Add implementation of DatagramChannel which uses epoll. This implementation does currently not support multicast yet which will me implemented later on. As most users will not use multicast anyway I think it is fair to just add the EpollDatagramChannel without the support for now. We shipped NioDatagramChannel without support earlier too ... Result: Be able to use EpollDatagramChannel for max. performance on linux
@trustin please review |
} | ||
|
||
/** | ||
* Block the given sourceToBlock address for the given multicastAddress on the given networkInterface |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use {@code ...}
to signify parameter names, everywhere possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@trustin I think I could even remove the javadocs as these are on the interfaces anyway ?
Looks OK except some nitpicks. Fix them all and then merge. |
@trustin also for 4.0 ? |
Yep. I'd say epoll transport is experimental for now. |
aka 'tech preview' - we are gonna make it stable in 4.1 if everything goes well. |
cherry-picked into 4.0, 4.1 and master. |
Motivation:
There is currently no epoll based DatagramChannel. We should add one to make the set of provided channels complete and also to be able to offer better performance compared to the NioDatagramChannel once SO_REUSEPORT is implemented.
Modifications:
Add implementation of DatagramChannel which uses epoll. This implementation does currently not support multicast yet which will me implemented later on. As most users will not use multicast anyway I think it is fair to just add the EpollDatagramChannel without the support for now. We shipped NioDatagramChannel without support earlier too ...
Result:
Be able to use EpollDatagramChannel for max. performance on linux