【发布时间】:2010-12-28 21:49:33
【问题描述】:
每当 any AppDomain 卸载时,我都需要触发一个事件 - 包括默认的进程之一。 AppDomain.DomainUnload 的问题在于它只针对非默认 AppDomain 触发。此外,AppDomain.ProcessExit 的执行时间有限,我不能依赖。
任何关于我如何实现这一目标的建议将不胜感激!
(或者,当后台线程 (Thread.IsBackground == True) 也工作时触发事件。)
【问题讨论】:
-
你想捕捉什么?您使用的是 ASP.Net、Winforms、WPF 还是控制台?在应用程序、DLL 还是服务中?
-
一个普通的控制台应用程序。我只想在默认 AppDomain 退出时(即 Main 结束时)触发一个事件。
-
为什么不把代码放在 Main 的末尾?
-
如果您要处理在卸载的默认应用程序域之后运行的内容..您认为该代码将在哪个应用程序域中运行?我可能是错的,但对我来说,这就像让一只鸡在它不再活着的时候下蛋...... :D 我认为 .net 只允许主机进程加载的应用程序域的可见性......
-
理想情况下,该事件会在就在域被卸载之前触发。 :)
标签: c# .net multithreading appdomain