基本上,从我所了解的我已经设法在互联网上搜索到的一点,线程可以在AppDomains之间传递。现在,我已经写了下面的代码:AppDomain和线程
const string ChildAppDomain = "BlahBlah";
static void Main()
{
if (AppDomain.CurrentDomain.FriendlyName != ChildAppDomain)
{
bool done = false;
while (!done)
{
AppDomain mainApp = AppDomain.CreateDomain(ChildAppDomain, null, AppDomain.CurrentDomain.SetupInformation);
try
{
mainApp.ExecuteAssembly(Path.GetFileName(Application.ExecutablePath));
}
catch (Exception ex)
{
// [snip]
}
AppDomain.Unload(mainApp);
}
}
else
{
// [snip] Rest of the program goes here
}
}
这工作得很好,一切都点击进入地方...主线程通过到我的程序的新版本,并开始通过主应用程序体运行。我的问题是,我将如何去让它回到父母AppDomain
?这可能吗?我想要实现的是在两个域之间共享一个类的实例。
任何指针,以良好的资源就怎么做远程处理? – 2009-06-26 12:50:59