C++ 捕获正在关闭的OS X

C++ 捕获正在关闭的OS X,c++,macos,cross-platform,shutdown,C++,Macos,Cross Platform,Shutdown,求求你,救命 找不到有关如何检测OS X是否正在关闭的信息。在Windows中,它很简单: if (GetSystemMetrics(SM_SHUTTINGDOWN) != 0) { //system is shutting down! } 如何在OSX上实现这一点?或者也可能是跨平台的Linux?在Linux中,您可以处理SIGTERM信号,操作系统X也是如此 void signal_callback_handler(int signum) { printf ("Caught

求求你,救命

找不到有关如何检测OS X是否正在关闭的信息。在Windows中,它很简单:

if (GetSystemMetrics(SM_SHUTTINGDOWN) != 0) {
    //system is shutting down!
}

如何在OSX上实现这一点?或者也可能是跨平台的Linux?

在Linux中,您可以处理SIGTERM信号,操作系统X也是如此

void signal_callback_handler(int signum)
{
    printf ("Caught signal: %d\n", signum);
}

// Somewhere in the entry point of your application
signal(SIGTERM, signal_callback_handler);

有一个通知。在文档中搜索NSWorkspace。