モジュール jdk.net
パッケージ jdk.net

クラスSocketFlow


  • public class SocketFlow
    extends Object
    プラットフォーム固有のソケット・オプションExtendedSocketOptions.SO_FLOW_SLAのサービス・レベル・プロパティを表します。

    ソケット・オプションを設定する前に、優先順位と帯域幅のパラメータを設定する必要があります。

    SO_FLOW_SLAオプションを設定しても、すぐに有効にならない場合があります。 getOption()でソケット・オプションの値を取得する場合、有効になるまではステータスがINPROGRESSとして返されます。 優先順位と帯域幅の値は、ステータスがOKとして返されるまで有効ではありません。

    セキュリティ・マネージャがインストールされている場合、このオプションを設定または取得するにはNetworkPermissionが必要です。

    導入されたバージョン:
    1.8
    • メソッドの詳細

      • create

        public static SocketFlow create()
        SO_FLOW_SLAソケット・オプションの設定とソケット・フローの作成に使用できる、新しいSocketFlowを作成します。
      • priority

        public SocketFlow priority​(int priority)
        このSocketFlowの優先順位を設定します。 NORMAL_PRIORITYまたはHIGH_PRIORITYを指定する必要があります。 設定されていない場合、フローの優先順位は通常の優先順位になります。
        例外:
        IllegalArgumentException - priorityがNORMAL_PRIORITYまたはHIGH_PRIORITYではない場合。
      • bandwidth

        public SocketFlow bandwidth​(long bandwidth)
        このSocketFlowの帯域幅を設定します。 0以上の値を指定する必要があります。 値が0の場合、ソケットのパケットはすべてドロップされます。
        例外:
        IllegalArgumentException - bandwidthが0より小さい場合。
      • priority

        public int priority()
        このSocketFlowの優先順位を返します。
      • bandwidth

        public long bandwidth()
        このSocketFlowの帯域幅を返します。
        戻り値:
        このSocketFlowの帯域幅、または-1 (ステータスがOKでない場合)。
      • status

        public SocketFlow.Status status()
        このSocketFlowのステータス値を返します。 オプションを設定または取得するための呼出しでオブジェクトが使用されなかった場合は、NO_STATUSが返されます。