我在管理我的应用程序和外部服务之间的连接的服务器应用程序中构建组件。我的组件检测服务器何时不可用,启动后台线程直至服务可用,然后重新进入“工作”状态。如何检测应用程序关闭?
我的问题是,如果在此线程运行时调用该组件的进程退出,则应用程序将不会终止,直到线程退出。基本上,如果此服务可用,我的应用程序无法关闭。
我的问题:是否有一些方法来检测应用程序是否试图关闭,以便任何后台线程可以退出?我注意到了AppDomain类中的一些事件,但我不确定在哪些条件下以及在哪些环境中它们会被解雇。
因为这是一个低级别的组件,所以我不想让它知道它运行的环境,而且我也不希望更高级别的组件需要告诉它它正在关闭。
该组件将用于WCF服务和Windows服务应用程序,并且我还从WinForm客户端应用程序进行测试。