CLR via C# 读书笔记 6-3 跨域访问的性能问题

以下代码演示了跨域访问的性能问题

大约不跨域比跨域快100多倍....

 

代码
AppDomain newDomain = AppDomain.CreateDomain("remote application domain", null, null);
MarshalByRefType local
= new MarshalByRefType();
MarshalByRefType remote
= (MarshalByRefType)newDomain.CreateInstanceAndUnwrap(Assembly.GetEntryAssembly().FullName, "TestConsole.MarshalByRefType");
Stopwatch sw
= null;
int length = 10000000;
int temp;

sw
= Stopwatch.StartNew();
for (int i = 0; i < length; i++)
{
//local.SetValue(i);
temp=local.GetValue();
}
Console.WriteLine(sw.ElapsedMilliseconds);

sw
= Stopwatch.StartNew();
for (int i = 0; i < length; i++)
{
//remote.SetValue(i);
temp = remote.GetValue();
}
Console.WriteLine(sw.ElapsedMilliseconds);
return;

  

test result in my machine:

101

17532

posted on 2011-01-06 15:29  听说读写  阅读(1286)  评论(0编辑  收藏  举报

导航