微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。