यदि प्रोग्राम अचानक या किसी अपवाद के साथ बाहर निकला है तो मुझे एक लॉग रिकॉर्ड करने की आवश्यकता है। उदाहरण के लिए, जब कोई प्रोग्राम चलाते समय Ctrl+C
दबाता है, तो मुझे लॉग इन करने की आवश्यकता होती है कि यह अचानक से निकल जाए। मैं यह कैसे कर सकता हूँ?क्या जावा प्रोग्राम अचानक समाप्त होने पर कुछ करना संभव है?
6
A
उत्तर
9
आप इस के लिए shutdown hook का प्रयास और उपयोग कर सकते हैं। प्रलेखन से, हुक निम्न परिस्थितियों में मार डाला जाएगा:
- कार्यक्रम सामान्य रूप से बाहर निकालता है
- वीएम
यह आपके ^C
स्थिति को शामिल किया गया समाप्त हो जाता है, लेकिन doubtfully तरह की स्थितियों को कवर किया जाएगा मशीन अनप्लग्ड (मशीन पर किसी प्रकार के अनावश्यक हार्डवेयर को छोड़कर)।
Here डिज़ाइन के बारे में कुछ नोट्स हैं।
क्रूड उदाहरण:
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
System.out.println("System was shutdown");
}
});
संबंधित मुद्दे
- 1. क्या UITableView रीलोड होने पर कॉलबैक प्राप्त करना संभव है?
- 2. प्रोग्राम 'टर्म' को समाप्त करता है जब प्रोग्राम
- 3. क्या सॉकेट पर असूचीबद्ध करना संभव है?
- 4. क्या एंड्रॉइड फोन पर जावा एफएक्स स्थापित करना संभव है?
- 5. प्रोग्राम शुरू होने के बाद जावा एजेंट शुरू करना
- 6. क्या जावास्क्रिप्ट के ऑनसममिट ईवेंट को प्रोग्राम पर प्रोग्राम रूप से कॉल करना संभव है?
- 7. क्या जावा वेब स्टार्ट एप्लिकेशन अपडेट होने पर कैश समाशोधन को मजबूर करना संभव है?
- 8. स्क्रिप्ट समाप्त होने पर कॉल फ़ंक्शन
- 9. क्या विंडोज़ में ऑब्जेक्टिव-सी प्रोग्राम निष्पादित करना संभव है?
- 10. प्रोग्राम डीबगर में भी अचानक समाप्त होता है - यह कैसे हुआ?
- 11. क्या कुछ यूनिट परीक्षणों को अनदेखा करना संभव है?
- 12. प्रावधान प्रोफ़ाइल समाप्त होने पर क्या होता है?
- 13. प्रोग्राम पर चलने वाले कार्यक्रम को ट्रिगर करना संभव है?
- 14. पायथन: मुख्य प्रोग्राम समाप्त होने पर थ्रेड को समाप्त कैसे करें
- 15. क्या स्क्रॉलबार पर पेंट करना संभव है?
- 16. एक पाइथन प्रोग्राम को समाप्त करना
- 17. क्या जीसीसीआई कंपाइलर पर एकाधिक प्रोग्राम संकलित करने पर GPU त्वरण का उपयोग करना संभव है?
- 18. थ्रेड समाप्त होने पर विधि को कॉल करना
- 19. क्या सी प्रोग्राम में सीएलआर होस्ट करना संभव है?
- 20. जावा, ऑब्जेक्ट का दायरा समाप्त होने पर एक विधि निष्पादित करता है
- 21. जावा: प्रक्रिया बंद होने पर विधि को कैसे कॉल करें (क्या यह भी संभव है?)
- 22. पाइथन सॉकेट अचानक समय समाप्त हो रहा है?
- 23. जावा पर डायरेक्टएक्स संभव है?
- 24. लिनक्स में प्रक्रिया समाप्त होने पर कैसे पता लगाना है?
- 25. क्या रूबी में एक विधि को परिभाषित करना संभव है जिसका नाम समाप्त होता है: (कोलन)?
- 26. सत्र समय समाप्त होने पर अजाक्स कॉल
- 27. क्या सेटलोकेल पर भरोसा करना संभव है, और स्थानीय स्थापित होने पर भरोसा करते हैं?
- 28. डिवाइस बंद होने पर समाप्त होने वाली स्थानीय अधिसूचनाएं
- 29. प्रोग्राम स्टूडियो 2010 प्रोग्राम समाप्त होने के बाद बाहर निकलता है
- 30. मल्टीप्रोसेसिंग प्रक्रिया समाप्त होने पर लिनक्स
मुझे लगता है कि उस पर CTRL + C चलेंगे और 'SIGTERM' लेकिन मुझे लगता है कि कार्यक्रम है जहाँ यह अभ्यस्त –
मैंने देखा है कि एम्बेडेड सिस्टम सका चलाने को मारने के लिए अन्य तरीके हैं वास्तव में एक बिजली नुकसान घटना लॉग इन करें। एक बहुत बड़ा संधारित्र और एक बहुत ही छोटी इंटरप्ट सेवा दिनचर्या की आवश्यकता है, लेकिन यह किया जा सकता है। –
एक और विकल्प सफल शटडाउन लॉग करना है और स्टार्टअप पर जांच करना है कि कार्यक्रम का अंतिम भाग सफलतापूर्वक बंद कर दिया गया था। –