|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.net
接口 SocketOptions
- 所有已知实现类:
- DatagramSocketImpl, SocketImpl
-
public interface SocketOptions
获取/设置套接字选项的方法的接口。此接口由 SocketImpl 和 DatagramSocketImpl 实现。它们的子类应该重写此接口的方法来支持它们自己的选项。
在此接口中指定选项的方法和常量仅用于实现目的。如果不为 SocketImpl 或 DatagramSocketImpl 创建子类,就不要直接使用它们。在 Socket、ServerSocket、DatagramSocket 和 MulticastSocket 中,存在获取/设置所有这些选项的类型安全的方法。
字段摘要 | |
---|---|
static int |
IP_MULTICAST_IF 设置用于发送多播包的传出接口。 |
static int |
IP_MULTICAST_IF2 同上。 |
static int |
IP_MULTICAST_LOOP 此选项启用或禁用多播数据报的本地回送。 |
static int |
IP_TOS 此选项为 TCP 或 UDP 套接字在 IP 地址头中设置服务类型或流量类字段。 |
static int |
SO_BINDADDR 获取绑定套接字的本地地址(不能仅将此选项“设置”为“得到”,因为套接字是在创建时绑定的,所以本地绑定的地址不可更改)。 |
static int |
SO_BROADCAST 为套接字设置 SO_BROADCAST。 |
static int |
SO_KEEPALIVE 为 TCP 套接字设置 keepalive 选项时,如果在 2 个小时(注:实际值与实现有关)内在任意方向上都没有跨越套接字交换数据,则 TCP 会自动将 keepalive 探头发送到同位体。 |
static int |
SO_LINGER 指定关闭时逗留的超时值。 |
static int |
SO_OOBINLINE 设置 OOBINLINE 选项时,在套接字上接收的所有 TCP 紧急数据都将通过套接字输入流接收。 |
static int |
SO_RCVBUF 设置传入网络 I/O 的平台所使用基础缓冲区的大小的提示。 |
static int |
SO_REUSEADDR 设置套接字的 SO_REUSEADDR。 |
static int |
SO_SNDBUF 设置传出网络 I/O 的平台所使用的基础缓冲区大小的提示。 |
static int |
SO_TIMEOUT 设置阻塞 Socket 操作的超时值: ServerSocket.accept(); SocketInputStream.read(); DatagramSocket.receive(); 选项必须在进入阻塞操作前设置才能生效。 |
static int |
TCP_NODELAY 对此连接禁用 Nagle 算法。 |
方法摘要 | |
---|---|
Object |
getOption(int optID) 获取选项的值。 |
void |
setOption(int optID, Object value) 启用/禁用 optID 指定的选项。 |
字段详细信息 |
---|
TCP_NODELAY
static final int TCP_NODELAY
-
对此连接禁用 Nagle 算法。在确认以前的写入数据之前不会缓冲写入网络的数据。
仅对 TCP (SocketImpl) 有效。
SO_BINDADDR
static final int SO_BINDADDR
-
获取绑定套接字的本地地址(不能仅将此选项“设置”为“得到”,因为套接字是在创建时绑定的,所以本地绑定的地址不可更改)。套接字的默认本地地址为 INADDR_ANY,表示多穴主机 (multi-homed host) 上的任何本地地址。多穴主机可以使用此选项接受仅到其地址的连接(在使用 ServerSocket 或 DatagramSocket 的情况下),或者将其返回地址指定到同位体(对于 Socket 或 DatagramSocket)。此选项的参数为 InetAddress。
此选项必须在构造方法中指定。
对 SocketImpl、DatagramSocketImpl 有效。
SO_REUSEADDR
static final int SO_REUSEADDR
-
设置套接字的 SO_REUSEADDR。在 java 中,它仅用于 MulticastSocket,默认情况下为 MulticastSocket 设置此选项。
对 DatagramSocketImpl 有效。
- 另请参见:
- 常量字段值
SO_BROADCAST
static final int SO_BROADCAST
-
为套接字设置 SO_BROADCAST。此选项启用和禁用发送广播消息的处理能力。它仅用于数据报套接字和支持广播消息概念的网络上(例如,以太网、令牌网等),默认情况下为 DatagramSocket 设置此选项。
- 从以下版本开始:
- 1.4
- 另请参见:
- 常量字段值
IP_MULTICAST_IF
static final int IP_MULTICAST_IF
-
设置用于发送多播包的传出接口。可以在具有多个网络接口的主机上使用,在此类主机上应用程序可能希望使用系统默认值之外的接口。获取/返回 InetAddress。
对多播(DatagramSocketImpl)有效。
IP_MULTICAST_IF2
static final int IP_MULTICAST_IF2
- 同上。引入这一选项后,使用 IP_MULTICAST_IF 的行为与以前一样,而新选项可以支持利用 IPv4 和 IPv6 地址设置传出接口。 注:确保不发生与此选项的冲突
IP_MULTICAST_LOOP
static final int IP_MULTICAST_LOOP
-
此选项启用或禁用多播数据报的本地回送。默认情况下,为 Multicast Socket 启用此选项。
- 从以下版本开始:
- 1.4
- 另请参见:
- 常量字段值