我试图通过计算一个对象的大小(串行方式中的一个)来执行一个反常的内存技巧,这样我就可以在内存流中向前跳到下一个。
这是一个托管类。我看到过对 sizeof 和 Mashal.SizeOf 的引用,但它们出现在对非托管类型或值类型的引用中。
那么,有没有人知道在运行时执行此操作的方法,或者我应该分解计算器并在代码中手动执行此操作?
最佳答案
如果你不使用不安全的编码(marshal),你就无法获得对象的大小
您可以使用如下工具:
CLR 分析器
VSTS 探查器
.NET 内存分析器
关于c# - 如何在 C# 中获取对象(类、结构)的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8876833/