using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
namespace thread
{
class MyAppDomain
{
static void Main(string[] args)
{
AppDomain DomainA;
DomainA = AppDomain.CreateDomain("MyDomainA");
string StringA = "DomainA Value";
DomainA.SetData("DomainKey", StringA);
CommonCallBack();
CrossAppDomainDelegate delegateA =
new CrossAppDomainDelegate(CommonCallBack);
DomainA.DoCallBack(delegateA);
}
public static void CommonCallBack()
{
AppDomain Domain;
//使用CurrentDomain属性来获取正在执行代码的域的引用
Domain = AppDomain.CurrentDomain;
Console.WriteLine("The value'" + Domain.GetData("DomainKey") +
"'was found in " + Domain.FriendlyName.ToString() + //用FriendlyName属性标识正在使用的AppDomain
"running on thread id: " +
AppDomain.GetCurrentThreadId().ToString());
}
}
}
本文介绍了一个使用C#实现的跨应用域(AppDomain)数据传递的例子。通过创建新的应用域并利用DoCallBack方法,实现了不同应用域之间的数据共享。文章展示了如何设置和获取应用域的数据。


被折叠的 条评论
为什么被折叠?



