2009-03-05 10 views
9

जावा का उपयोग करके 30 सेकंड के लिए एक पीसी निष्क्रिय होने का पता लगाने के लिए कैसे?जावा का उपयोग करके 30 सेकंड के लिए एक पीसी निष्क्रिय होने का पता लगाने के लिए कैसे?

संपादित निष्क्रिय मेरा मतलब है कोई भी उपयोगकर्ता गतिविधि देखते हैं कि साथ। उपयोगकर्ता 30 सेकंड में कुछ भी नहीं करता है। मैं विंडोज़ की तरह एक ऐप्लिकेशंस करना चाहता हूं, जो यह पता लगाता है कि उपयोगकर्ता कुछ भी नहीं करता है और स्टैड-इन में प्रवेश करता है।

+0

क्या आप अपने प्रश्न को अधिक विशिष्ट तरीके से दोहरा सकते हैं? – rogeriopvl

+0

आपको 'निष्क्रिय' परिभाषित करने की आवश्यकता है - क्या यह कोई उपयोगकर्ता इनपुट नहीं है, कोई डिस्क गतिविधि नहीं है, कोई प्रक्रिया चल रही है, औसत CPU लोड या क्या? – Skizz

+0

"निष्क्रिय" का अर्थ क्या है? कोई/सीपीयू सक्रियता (मल्टीप्रोक सिस्टम के बारे में क्या)? कोई उपयोगकर्ता इनपुट नहीं? कोई नेटवर्क यातायात नहीं? कोई हार्डडिस्क I/O नहीं? – sleske

उत्तर

6

सीधे जावा से यह संभव नहीं है। आपको कुछ मूल पुस्तकालय ढूंढना होगा और उसके लिए जेएनआई रैपर बनाना होगा।

+0

कृपया कुछ जेएनआई रैपर – YumYumYum

7

अनुरोध के अनुसार संभव नहीं है, लेकिन आप java.lang.management API का उपयोग करके वर्कअराउंड बना सकते हैं। एक जेएनआई कार्यान्वयन javaworld पर भी पाया जा सकता है।

6

ऑपरेटिंग सिस्टम एमएक्सबीन विधि प्राप्त करने के लिए आसान नहीं है सिस्टम सिस्टम लोडरवेवर() केवल जावा 6 के बाद उपलब्ध है, आप इसका ट्रैक रख सकते हैं और यदि यह कुछ समय के लिए समान है तो पीसी निष्क्रिय है।

इससे निष्क्रिय सीपीयू के मामले में निष्क्रिय हो जाती है

OperatingSystemMXBean operatingSystemMxBean = ManagementFactory.getOperatingSystemMXBean();

+0

दिखाएं यह हमेशा विंडोज 7 पर -1 देता है। कोई संकेत? – qasimzee

+0

[जावाडॉक] के अनुसार (http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/management/OperatingSystemMXBean.html)। यदि लोड औसत उपलब्ध नहीं है, तो ऋणात्मक मान वापस कर दिया जाता है। विंडोज 7 पर काम कर रहे इस विधि के लिए आप भाग्य से बाहर हो सकते हैं। –

13

मैं JNA का उपयोग कर प्रणाली के व्यापक निष्क्रिय समय का पता लगाने के इस उत्कृष्ट उदाहरण में आया हूं। Java Native Access (JNA) एक ऐसी लाइब्रेरी है जो आपको मूल कोड लिखने की आवश्यकता के बिना Java Native Interface (JNI) तक पहुंच प्रदान करती है।

Here's the example जो आप पूछ रहे हैं उससे बहुत करीब है।

संबंधित मुद्दे