DataSocket (クラス)
public abstract DataSocket {inherits Socket}
パッケージ: CURL.IO.SOCKET
直接継承しているサブクラス: DataTCPSocket

DataSocket.shutdown メソッド、Stream 作成やバッファ サイズの設定呼び出しを保持する抽象基本クラス。基本的に、すべてのクライアント ソケットに共通の任意の機能です。

プログラミング注意事項

一般的な DataSocket 機能だけを必要とし、任意の種類のクライアント ソケットを受け取ることができるパラメータまたは戻り値に適しています。DataTCPSocket によって実装されます。

プロパティ
receive-buffer-size:データを受け取る OS バッファのサイズ。
アクセサ public abstract DataSocket.receive-buffer-size:int
セッター public abstract DataSocket.receive-buffer-size:int
send-buffer-size:データを送信する OS バッファのサイズ。
アクセサ public abstract DataSocket.send-buffer-size:int
セッター public abstract DataSocket.send-buffer-size:int
プロパティ 継承 Socket: timeout

メソッド
read-byte:byte を読み込みます。
protected abstract {DataSocket.read-byte
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:(int, byte)
read-bytes:{FastArray-of byte}、つまり ByteVec を読み込みます。
protected abstract {DataSocket.read-bytes
buf:{FastArray-of uint8},
start:int = 0,
size:int = buf.size - start,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int
shutdown:ソケットを閉じます。入力または出力のいずれかのシャットダウンも可能です。
public abstract {DataSocket.shutdown
shutdown-only:DataSocketShutdownOption,
exception-if-not-connected?:bool = true
}:void
to-InputStream:このソケットの DataSocketByteInputStream を生成します。
public abstract {DataSocket.to-InputStream}:DataSocketByteInputStream
to-OutputStream:このソケットの DataSocketByteOutputStream を生成します。
public abstract {DataSocket.to-OutputStream
}:DataSocketByteOutputStream
write-byte:byte の送信または書き込みを行います。
protected abstract {DataSocket.write-byte
b:byte,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int
write-bytes:{FastArray-of byte}、つまり ByteVec の送信または書き込みを行います。
protected abstract {DataSocket.write-bytes
buf:{FastArray-of uint8},
start:int = 0,
size:int = buf.size - start,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int
メソッド 継承 Socket: close
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize




プロパティ詳細
receive-buffer-size (アクセサ)
アクセサ public abstract DataSocket.receive-buffer-size:int
セッター public abstract DataSocket.receive-buffer-size:int

データを受け取る OS バッファのサイズ。

注意事項

データの受信速度と、接続での read 呼び出しがブロックする回数に影響します。送信できるデータのサイズまたは量には影響しません。OS が指定されたサイズを受け取らない場合もあります。


send-buffer-size (アクセサ)
アクセサ public abstract DataSocket.send-buffer-size:int
セッター public abstract DataSocket.send-buffer-size:int

データを送信する OS バッファのサイズ。

注意事項

データの送信速度と、接続での送信がブロックする回数に影響します。送信できるデータのサイズまたは量には影響しません。OS が指定されたサイズを受け取らない場合もあります。





メソッド詳細
read-byte (メソッド)
protected abstract {DataSocket.read-byte
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:(int, byte)

byte を読み込みます。

プログラミング注意事項

通常は DataSocket.to-OutputStream が使用されます。
timeout: クラスにすでに格納されている値が適切でない場合に使用されるタイムアウトの Time キーワード。
exception-on-timeout?: タイムアウトで例外をスローするかどうかを示す bool キーワード。既定値は true です。

戻り値

b、読み込む byte数、読み込まれたバイトの int 数。


read-bytes (メソッド)
protected abstract {DataSocket.read-bytes
buf:{FastArray-of uint8},
start:int = 0,
size:int = buf.size - start,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int

{FastArray-of byte}、つまり ByteVec を読み込みます。

プログラミング注意事項

通常は DataSocket.to-InputStream が代わりに使用されます。
buf: 読み込まれる {FastArray-of byte}
start: 開始ベクトルの int キーワード。既定値は 0 です。
size: 長さを示す int キーワード。既定値は buf.size - start です。
timeout: クラスにすでに格納されている値が適切でない場合に使用されるタイムアウトの Time キーワード。
exception-on-timeout?: タイムアウトで例外をスローするかどうかを示す bool キーワード。既定値は true です。

戻り値

読み込まれたバイト数を示す int。EOF では -1 になります。


shutdown (メソッド)
public abstract {DataSocket.shutdown
shutdown-only:DataSocketShutdownOption,
exception-if-not-connected?:bool = true
}:void

ソケットを閉じます。入力または出力のいずれかのシャットダウンも可能です。

shutdown-only: 全体的なシャットダウンか、入力または出力のみのシャットダウンかを示します (DataSocketShutdownOption.input-outputDataSocketShutdownOption.inputDataSocketShutdownOption.output をそれぞれ使用します)。
exception-if-not-connected?: 別の側のソケットが閉じられた場合に例外をスローするかどうかを示す bool キーワード。既定は true です。(これは、BadStateSocketException のキャッチ、SocketErrorCode.not-connected エラー コードのチェック、およびその無視と同じことですがより高速です。)

プログラミング注意事項

これを実行して接続の終了を開始します。この後に、Socket.close を呼び出す必要があります。


to-InputStream (メソッド)
public abstract {DataSocket.to-InputStream}:DataSocketByteInputStream

このソケットの DataSocketByteInputStream を生成します。

注意事項

ソケットを完全に閉じる前に、DataSocket.to-InputStreamDataSocket.to-OutputStreamで返されるすべてのストリームとソケット自体を閉じる必要があります。

注意事項

DataSocketShutdownOption.input-output または DataSocketShutdownOption.inputDataSocket.shutdown を呼び出した後、または Socket.close を呼び出した後では、この呼び出しは失敗します。


to-OutputStream (メソッド)
public abstract {DataSocket.to-OutputStream
}:DataSocketByteOutputStream

このソケットの DataSocketByteOutputStream を生成します。

注意事項

ソケットを完全に閉じる前に、DataSocket.to-InputStreamDataSocket.to-OutputStreamで返されるすべてのストリームとソケット自体を閉じる必要があります。

注意事項

DataSocketShutdownOption.input-output または DataSocketShutdownOption.outputDataSocket.shutdown を呼び出した後、または Socket.close を呼び出した後では、この呼び出しは失敗します。


write-byte (メソッド)
protected abstract {DataSocket.write-byte
b:byte,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int

byte の送信または書き込みを行います。

プログラミング注意事項

通常は DataSocket.to-OutputStream が使用されます。
b: 送信される byte
timeout: クラスにすでに格納されている値が適切でない場合に使用されるタイムアウトの Time キーワード。
exception-on-timeout?: タイムアウトで例外をスローするかどうかを示す bool キーワード。既定値は true です。

戻り値

書き込まれたバイト数を示す int


write-bytes (メソッド)
protected abstract {DataSocket.write-bytes
buf:{FastArray-of uint8},
start:int = 0,
size:int = buf.size - start,
timeout:Time = self.timeout,
exception-on-timeout?:bool = true
}:int

{FastArray-of byte}、つまり ByteVec の送信または書き込みを行います。

プログラミング注意事項

通常は DataSocket.to-OutputStream が使用されます。
buf: 送信される {FastArray-of byte}
start: 開始ベクトルの int キーワード。既定値は 0 です。
size: 長さを示す int キーワード。既定値は buf.size - start です。
timeout: クラスにすでに格納されている値が適切でない場合に使用されるタイムアウトの Time キーワード。
exception-on-timeout?: タイムアウトで例外をスローするかどうかを示す bool キーワード。既定値は true です。

戻り値

書き込まれたバイト数を示す int