首先,请不要转移到serverfault。这确实是一个编程问题: - )
我们正在开发偶尔连接的应用程序。这些应用程序驻留在笔记本电脑和手持设在我的例子中,应用程序在一个小型servlet容器(如jetty)上运行。
要求是如果系统空闲,应用程序应该暂停。 如果笔记本电脑的盖子关闭,则应用程序和servlet容器处于挂起模式。
这些东西是操作系统本身的功能还是可以将这种功能意识内置到应用程序中?如果它可以内置到应用程序中,怎么做?
答案 0 :(得分:2)
每个操作系统都提供一组您可以使用和订阅的API和通知。例如,Windows在发生电源事件之前向所有窗口发送WM_POWERBROADCAST消息。请在MSDN的Power Management部分详细阅读。
但是,您需要Java应用程序中的电源感知功能,这需要您使用某种JNI桥接器。有一篇关于检测待机和拒绝请求的codeproject文章(尽管在Windows Vista / 7中无法再拒绝电源转换)。