3

ネットワークを介して送受信されるデータのタイプは、String または Bytestring です。Intやなどの他の型を送信することはできません。[Bool]すべてがHandle. を使用しても解析できることはわかってreadいますが、美しくも信頼性も効果的でもないと思います。

なぜこの選択​​がなされたのですか?それ以外の場合は技術的に「不可能」であるためNetworkですか、それとも単に C ライブラリへのバインドであるため、遅延のためですか、それとも何か他の理由があるためですか?

4

1 に答える 1

8

ネットワークを通過するデータは、単なるバイトのストリームです。どちらのエンドポイントでもそのバイトストリームに意味を割り当てることができますが、ネットワーク上では意味がありません。私の知る限り、これはすべての言語に当てはまります。一部の言語は、標準ライブラリでそれを抽象化することを選択するだけです。

送信するデータは、バイナリシリアルencodeなどのパッケージで(およびdecode関数を使用して)エンコード/デコードできます。どちらにも、、、、、などの多くの標準タイプのシリアル化クラス(および、)のインスタンスが付属してBinaryいます。SerializeIntDoubleBool[]

于 2012-08-23T20:18:39.797 に答える