我在管理我的應用程序和外部服務之間的連接的服務器應用程序中構建組件。我的組件檢測服務器何時不可用,啓動後臺線程直至服務可用,然後重新進入「工作」狀態。如何檢測應用程序關閉?
我的問題是,如果在此線程運行時調用該組件的進程退出,則應用程序將不會終止,直到線程退出。基本上,如果此服務可用,我的應用程序無法關閉。
我的問題:是否有一些方法來檢測應用程序是否試圖關閉,以便任何後臺線程可以退出?我注意到了AppDomain類中的一些事件,但我不確定在哪些條件下以及在哪些環境中它們會被解僱。
因爲這是一個低級別的組件,所以我不想讓它知道它運行的環境,而且我也不希望更高級別的組件需要告訴它它正在關閉。
該組件將用於WCF服務和Windows服務應用程序,並且我還從WinForm客戶端應用程序進行測試。