我有一个监听 Unix 套接字的 Scotty 应用程序。我希望应用程序在退出时删除套接字(即当我键入Ctrl-时C),但我不确定如何完成此操作。我的main
功能看起来像
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
似乎是 Scotty 框架没有或无法捕捉到的中断。有没有办法执行这样的清理操作?