У меня есть приложение Scotty, которое прослушивается в гнезде Unix. Я хочу, чтобы приложение удаляло сокет, когда оно выйдет (т. Е. Когда я набираю Ctrl - C), но я не уверен, как это сделать. Моя main
функция выглядитОчистка после приложения Scotty завершена
main = do
sock <- socket AF_UNIX Stream 0
bind sock $ SockAddrUnix "/tmp/my_app.sock"
listen sock maxListenQueue
scottySocket def sock $ do
...
removeFile "/tmp/my_app.sock"
Когда я печатаю Ctrl - C функция removeFile
не называется, что, как представляется, прерывание, что структура Скотти не может или не поймать. Есть ли способ выполнить действия по очистке, подобные этому?