Subject says it all.
I want some code to run if my application is terminated by, say, ^C.
Subject says it all.
I want some code to run if my application is terminated by, say, ^C.
See code below. To handle Ctrl-C in a console app, use the Console.CancelKeyPress event.
// 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"
Use AppDomain.ProcessExit
(http://msdn.microsoft.com/en-us/library/system.appdomain.processexit.aspx):
System.AppDomain.CurrentDomain.ProcessExit(fun _ -> ...)