47 * TCP sockets. |
47 * TCP sockets. |
48 * |
48 * |
49 * <p> The {@linkplain #openSocketChannel(ProtocolFamily) openSocketChannel} and |
49 * <p> The {@linkplain #openSocketChannel(ProtocolFamily) openSocketChannel} and |
50 * {@linkplain #openServerSocketChannel(ProtocolFamily) openServerSocketChannel} |
50 * {@linkplain #openServerSocketChannel(ProtocolFamily) openServerSocketChannel} |
51 * methods open {@link java.nio.channels.SelectableChannel selectable channels} |
51 * methods open {@link java.nio.channels.SelectableChannel selectable channels} |
52 * to RDMA sockets. The {@linkplain #openSelector() openSelector} opens a |
52 * to RDMA sockets. The {@linkplain #openSelector() openSelector} method opens a |
53 * {@linkplain Selector} for multiplexing selectable channels to RDMA sockets. |
53 * {@linkplain Selector} for multiplexing selectable channels to RDMA sockets. |
54 * Selectable channels to RDMA sockets can not be multiplexed with selectable |
54 * Selectable channels to RDMA sockets cannot be multiplexed with selectable |
55 * channels opened by the default system-wide {@link SelectorProvider selector |
55 * channels opened by the default system-wide {@link SelectorProvider selector |
56 * provider}. Furthermore, the RDMA selector provider does not support datagram |
56 * provider}. Furthermore, the RDMA selector provider does not support datagram |
57 * channels or pipes; its {@linkplain SelectorProvider#openDatagramChannel |
57 * channels or pipes; its {@linkplain SelectorProvider#openDatagramChannel |
58 * openDatagramChannel} and {@linkplain SelectorProvider#openPipe openPipen} |
58 * openDatagramChannel} and {@linkplain SelectorProvider#openPipe openPipe} |
59 * methods throw {@code UnsupportedOperationException}. |
59 * methods throw {@code UnsupportedOperationException}. |
60 * |
60 * |
61 * <p> Unless otherwise noted, passing a {@code null} argument will cause a |
61 * <p> Unless otherwise noted, passing a {@code null} argument will cause a |
62 * {@linkplain NullPointerException} to be thrown. |
62 * {@linkplain NullPointerException} to be thrown. |
63 * |
63 * |
64 * @implNote The RDMA selector provider supports channels to both IPv4 and |
64 * @implNote The RDMA selector provider supports channels to both IPv4 and |
65 * IPv6 RDMA sockets. If the no-arg {@linkplain SelectorProvider#openSocketChannel() |
65 * IPv6 RDMA sockets. If the no-arg {@linkplain SelectorProvider#openSocketChannel() |
66 * openSocketChannel} or {@linkplain SelectorProvider#openServerSocketChannel() |
66 * openSocketChannel} or {@linkplain SelectorProvider#openServerSocketChannel() |
67 * openServerSocketChannel} methods are used to open channels then those channels |
67 * openServerSocketChannel} methods are used to open channels, then those |
68 * will be to IPv6 sockets if IPv6 is enabled on the platform (or IPv4 sockets |
68 * channels will be to IPv6 sockets if IPv6 is enabled on the platform (or |
69 * if IPv6 is not enabled). |
69 * IPv4 sockets if IPv6 is not enabled). |
70 * |
70 * |
71 * @since 13 |
71 * @since 13 |
72 */ |
72 */ |
73 public class RdmaSockets { |
73 public class RdmaSockets { |
74 |
74 |