.Net 2.0内存对象布局详析及与1.1变化比较:
首先找个小的C#的演示程序:
namespace CLRLayoutTest2._0
{
class Program
{
static int TestStaticFields = 1221119;
static object TestStaticObject = new object();
static string TestStaticMethod()
{
return "Test Static Method";
}
static void Main(string[] args)
{
Program a = new Program();
a.Test();
System.Console.ReadLine();
}
public void Test()
{
int i = 2;
object testObject = (object)i;
System.Console.WriteLine(testObject.ToString());
System.Console.WriteLine(TestStaticFields.ToString());
}
}
}
好,设置好在.Net Framework 2.0的环境下给编译了。然后设置好windbg的调试环境,接着给attach上去:
0:000> !dso
OS Thread Id: 0x79c (0)
ESP/REG Object Name
0012f3c4 013f37b8 Microsoft.Win32.SafeHandles.SafeFileHandle
0012f3d4 013f37b8 Microsoft.Win32.SafeHandles.SafeFileHandle
0012f408 013f3854 System.Byte[]
0012f40c 013f37cc System.IO.__ConsoleStream
0012f430 013f37fc System.IO.StreamReader
0012f434 013f37fc System.IO.StreamReader
0012f438 013f16e8 CLRLayoutTest2._0.Program
0012f448 013f37fc System.IO.StreamReader
0012f44c 013f3b70 System.IO.TextReader+SyncTextReader
0012f450 013f16e8 CLRLayoutTest2._0.Program
0012f460 013f3b70 System.IO.TextReader+SyncTextReader
0012f464 013f16e8 CLRLayoutTest2._0.Program
0012f46c 013f16e8 CLRLayoutTest2._0.Program
0012f478 013f16cc System.Object[] (System.String[])
0012f534 013f16cc System.Object[] (System.String[])
0012f6e0 013f16cc System.Object[] (System.String[])
0012f708 013f16cc System.Object[] (System.String[])
相关视频
相关阅读 vs.netIDE报"以下文件中的行尾不一致,要将行尾标准化吗?"的解决ie6下面asp.net mvc3 部署应用程序.NET 3.5 安装错误的四个原因及解决方法支持无限制历史记录的Paint.NET 3.5.8 Final,你用了吗?.NET Framework环境安装错误怎么办?JVM和.NET CLR和哪个会被彻底击败在asp.net mvc中实现右键菜单和简单的分页教程VB.NET如何得到调用当前过程的方法名称和类名称
热门文章 没有查询到任何记录。
最新文章
什么是.NET中的TDD?ASP.NET AJAX入门简介
WebMatrix入门教程VC++2008中如何调用GetOpenFileName打开文件PlaySound函数在VC++6.0中如何播放音乐及声请问VC++回调函数怎么用
人气排行 嵌入式实时操作系统VxWorks入门教程ArrayList 与 string、string[] 的转换C#遍历整个文件夹及子目录的文件代码WebMatrix入门教程asp.net判断文件或文件夹是否存在c#判断数据NULL值的方法vc++6.0怎么写Windows简单窗口代码.net解决数据导出excel时的格式问题
查看所有0条评论>>