私はオブジェクトのサイズ(シリアルの方法で多くのうちの1つ)を計算することによって、奇妙なメモリのトリックを実行しようとしています。メモリストリームを次のメモリストリームに転送します。どのようにCのオブジェクト(クラス、構造体)のサイズを取得する#
これは管理対象クラス用です。私はsizeofとMashal.SizeOfへの参照を見てきましたが、アンマネージ型や値型を参照していました。
だから誰でも実行時にこれを行う方法を知っているのですか?計算機を分解してコード内で手動で行うべきですか?あなたが好きなツールを使用することができますが、危険なコーディング(マーシャル)を使用していけない場合は、オブジェクトのサイズを取得カント
何「メモリストリーム "あなたについて話している?オブジェクトのシリアル化された*サイズについて話しているなら、それはメモリのサイズとは非常に異なっている可能性があります。 –
ファイルストリーム。私はzipファイルに含まれているXMLファイルを手動で解析するコードを書いています。物事をスピードアップし、時折のアイテムを解析するだけで済むので、オブジェクトのサイズをあらかじめ計算しておくことができます。例えば、私がこれらのオブジェクトを20個持っていて、最初と12番目のものだけが必要な場合は、私が目標に達するまで、行ごとに解析するのではなく、ジャンプを計算することによって、ある時間を言いたいと思います。 – user978122
これは、マネージオブジェクトがどのようにMemoryStreamにシリアル化されるかによって異なります。シリアライゼーションコードを表示できますか? – Heinzi