如何使用Java检测PC已空闲30秒?

时间:2009-03-05 10:20:23

标签: java

如何使用Java检测PC已空闲30秒?

EDITED

闲置我的意思是没有用户活动。用户在30秒内什么都不做。我喜欢像Windows这样的应用,检测用户什么都不做,然后进入stad-by。

4 个答案:

答案 0 :(得分:13)

我遇到了使用JNA检测系统范围空闲时间的优秀示例。 Java Native Access (JNA)是一个提供Java Native Interface (JNI)访问权限的库,无需您实际编写本机代码。

Here's the example非常接近你所要求的。

答案 1 :(得分:7)

无法按要求生效,但您可以使用java.lang.management API创建变通方法。 JNI实现也可以在javaworld上找到。

答案 2 :(得分:6)

直接来自java,这是不可能的。你必须找到一些本地库并为此创建一个JNI包装器。

答案 3 :(得分:6)

不容易看看OperatingSystemMXBean方法getSystemLoadAverage()仅在java 6中可用,你可以跟踪它,如果它在一段时间内是相同的,则确定pc是空闲的。

假设空闲CPU

空闲
  

OperatingSystemMXBean   operatingSystemMxBean =   ManagementFactory.getOperatingSystemMXBean();