1

たくさんのものを含むメッセージ Image と、複数の画像を格納するメッセージ ImageSet があります。

message Image {
    ...
}
message ImageSet {
    repeated Image images = 1;
}

すべてを 1 つのファイルに保存したくないので、複数の ImageSet も使用します。私が抱えている問題は、各 ImageSet が非常に大きくなり、そのために警告/エラーが発生することです。これを設計するより良い方法はありますか?

このようにファイルを解析することに注意してください。

ImageSet image_set;
image_set.ParseFromIstream(stream);
4

1 に答える 1

0

画像データ オブジェクトを送信するために protobuf-messages を使用する必要はありません。画像を説明するために、次のようなものを設計できます。

message Image {
    required int64 bytes_size = 1;
}

message ImageSet {
    repeated Image images = 1;
}

送信する各画像データの数とサイズを指定します。ソケットを介してメッセージの後に画像の日付を送信し、同じ順序で反対側を読むだけではありません。

送信者側:

socket.write(protobuf_message_size); // for example 8 bytes    
socket.write(protobuf_message);
socket.write(binary_images_data);
于 2013-03-04T05:46:51.273 に答える