Module  jdk.net
软件包  jdk.net

Class SocketFlow



  • public class SocketFlow
    extends Object
    表示平台特定套接字选项ExtendedSocketOptions.SO_FLOW_SLA的服务级别属性。

    在设置套接字选项之前,必须先设置优先级和带宽参数。

    当设置了SO_FLOW_SLA选项时,可能不会立即生效。 如果使用getOption()获取套接字选项的值,则状态可能会返回为INPROGRESS直到生效。 优先级和带宽值仅在状态返回为“OK”时有效。

    安装安全管理器时,需要一个NetworkPermission来设置或获取此选项。

    从以下版本开始:
    1.8
    • 方法详细信息

      • create

        public static SocketFlow create​()
        创建一个新的SocketFlow,可用于设置SO_FLOW_SLA套接字选项并创建套接字流。
      • priority

        public SocketFlow priority​(int priority)
        设置这个SocketFlow的优先级。 必须是NORMAL_PRIORITY HIGH_PRIORITY。 如果没有设置,流的优先级是正常的。
        异常
        IllegalArgumentException - 如果优先级不是NORMAL_PRIORITY或HIGH_PRIORITY。
      • bandwidth

        public SocketFlow bandwidth​(long bandwidth)
        设置这个SocketFlow的带宽。 必须大于或等于零。 值为零会丢弃套接字的所有数据包。
        异常
        IllegalArgumentException - 如果带宽小于零。
      • priority

        public int priority​()
        返回此SocketFlow的优先级。
      • bandwidth

        public long bandwidth​()
        返回此SocketFlow的带宽。
        结果
        这个SocketFlow的带宽,或 -1如果状态不正常。
      • status

        public SocketFlow.Status status​()
        返回此SocketFlow的Status值。 如果在调用中没有使用该对象来设置或获取该选项,则返回NO_STATUS。
      • toString

        public String toString​()
        描述从类别复制: Object
        返回对象的字符串表示形式。 一般来说, toString方法返回一个字符串,“文本地表示”此对象。 结果应该是一个简明扼要的表达,容易让人阅读。 建议所有子类覆盖此方法。

        toString类方法Object返回一个由类的名称,其中所述对象是其实例,该符号字符`的字符串@ ”,并且对象的哈希码的无符号的十六进制表示。 换句话说,这个方法返回一个等于下列值的字符串:

         getClass().getName() + '@' + Integer.toHexString(hashCode())
         
        重写:
        toStringObject
        结果
        对象的字符串表示形式。