< prev index next >

src/java.base/share/classes/java/net/Socket.java

Print this page

        

*** 48,57 **** --- 48,103 ---- * {@code SocketImpl} class. An application, by changing * the socket factory that creates the socket implementation, * can configure itself to create sockets appropriate to the local * firewall. * + * <p> The {@code Socket} class offers some + * convenience methods (such as {@link #setReuseAddress(boolean) + * setReuseAddress}) to get and set some commonly used options. + * However, socket options can be more generally configured using the + * {@link #setOption(SocketOption, Object) setOption} method. + * A {@code Socket} support the following options: + * <blockquote> + * <table class="striped"> + * <caption style="display:none">Socket options</caption> + * <thead> + * <tr> + * <th scope="col">Option Name</th> + * <th scope="col">Description</th> + * </tr> + * </thead> + * <tbody> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </th> + * <td> The size of the socket send buffer </td> + * </tr> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th> + * <td> The size of the socket receive buffer </td> + * </tr> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#SO_KEEPALIVE SO_KEEPALIVE} </th> + * <td> Keep connection alive </td> + * </tr> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th> + * <td> Re-use address </td> + * </tr> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#SO_LINGER SO_LINGER} </th> + * <td> Linger on close if data is present (when configured in blocking mode + * only) </td> + * </tr> + * <tr> + * <th scope="row"> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </th> + * <td> Disable the Nagle algorithm </td> + * </tr> + * </tbody> + * </table> + * </blockquote> + * Additional (implementation specific) options may also be supported. + * * @author unascribed * @see java.net.Socket#setSocketImplFactory(java.net.SocketImplFactory) * @see java.net.SocketImpl * @see java.nio.channels.SocketChannel * @since 1.0
< prev index next >