回答
使用AppDomain.ProcessExit
(http://msdn.microsoft.com/en-us/library/system.appdomain.processexit.aspx):
System.AppDomain.CurrentDomain.ProcessExit(fun _ -> ...)
也許ProcessExit(http://msdn.microsoft.com/en-us/library/system.appdomain.processexit.aspx)將更適合正常進程終止的情況。在簡單控制檯示例 System.AppDomain.CurrentDomain.ProcessExit.Add(fun _ - > printfn「ProcessExit」) System.AppDomain.CurrentDomain.DomainUnload.Add(fun_ - > printfn「DomainUnload」) 它輸出「ProcessExit 「退出後。 – desco 2010-07-30 08:44:01
絕對!我怎麼會錯過它? – 2010-07-30 20:49:08
查看下面的代碼。要在控制檯應用程序中處理Ctrl-C,請使用Console.CancelKeyPress事件。
// does not work - no exception on Ctrl-C
//System.AppDomain.CurrentDomain.UnhandledException.Add(
// fun _ -> printfn "app is about to die")
System.Console.CancelKeyPress.Add(
fun _ -> printfn "app is about to die")
printfn "starting..."
System.Threading.Thread.Sleep(5000) // press Ctrl-C
printfn "ended"
請注意,這隻能處理^ C終止,而不是任意處理退出。 – 2010-07-30 06:48:13
- 1. 如何爲處理程序編寫teamplate
- 2. Python退出處理程序
- 3. 退出事件處理程序強制應用程序關閉
- 4. branch.initSessionWithLaunchOptions處理程序在應用程序退出時觸發
- 5. 如何從處理程序中退出異步調度程序?
- 6. 如何在多處理程序中退出整個應用程序
- 7. 如何讓多處理python應用程序徹底退出
- 8. 在應用程序退出時處理RX線程
- 9. 如何編寫C++音頻處理應用程序?
- 10. 如何從Android應用程序中退出應用程序
- 11. 從任務管理器處理退出應用程序
- 12. 退出WPF應用程序清理
- 13. 如何在Macintosh中以編程方式退出應用程序
- 14. 如何以編程方式退出mac應用程序?
- 15. 如何以編程方式退出iPhone應用程序?
- 16. 忽略MySQL退出處理程序
- 17. SIGSEGV處理程序不能退出
- 18. mysql退出處理程序幫助
- 19. 退出點擊處理程序
- 20. 如何以編程方式退出或退出Windows Phone 8應用程序?
- 21. 如何在C++中註冊線程退出處理程序?
- 22. WP7 PhoneGap應用程序後退按鈕退出應用程序
- 23. 如何退出wpf應用程序
- 24. 如何退出android應用程序?
- 25. 如何退出Android應用程序?
- 26. android - 如何退出應用程序
- 27. 如何完全退出應用程序
- 28. 如何退出PhoneGap的應用程序?
- 29. 如何退出wp7應用程序?
- 30. 如何正常退出應用程序
只是一個想法 - 雖然你問F#你很可能在谷歌的「NET應用程序終止事件」,並找到一般的更多信息如何正確處理這類問題的問題。 – 2010-07-30 12:46:02