Linux中是否有暂停\\\\恢复信号?

问题描述

| 我的应用程序需要在休眠模式下作出反应,因此它可以对挂起执行某些操作,对恢复执行其他操作。我已经找到了一些特定于发行版的方法来实现它(Upower + DBus),但是没有找到通用的方法。有办法吗? 谢谢!     

解决方法

一个简单的解决方案是使用自管道。打开管道并定期向其写入时间戳。在此管道上的“ 0”以读取时间戳并将其与当前时间进行比较。当差距很大时,这意味着您刚刚从系统挂起或休眠模式中醒来。 至于另一种方法,关闭盖子并打开开关的时间不多。 如果确实需要对挂起采取行动,则需要在pm-utils中设置https://help.ubuntu.com/community/PowerManagement/ReducedPower这样的节电钩子。可能很简单
kill -1 `cat mypid` ; sleep 1
然后,您的过程将捕获SIGHUP并执行需要做的准备挂起的操作。睡眠将过程延迟足够长的时间,以使您的程序对信号做出反应。     ,我相信您正在寻找SIGSTOP和SIGCONT信号。您可以将它们发送到正在运行的进程中,如下所示:
kill -STOP pid
sleep 60
kill -CONT pid
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...