अब तक मैंने अपने आवेदन को अकेले स्टैंड के रूप में उपयोग किया था। इसलिए, जब उपयोगकर्ता ने "रोकें" बटन दबाया तो मैंने System.exit(0);
कहा और यह ठीक था।मैं अपने सॉफ़्टवेयर को सुरक्षित तरीके से कैसे बंद कर सकता हूं?
अब मेरे आवेदन को किसी अन्य प्रोग्राम से (प्रोग्रामेटिक तरीके से) कहा जाएगा। तो, मुझे डर है कि System.exit(0);
न केवल मेरी प्रक्रिया को मार देगा बल्कि बाहरी सॉफ्टवेयर भी शुरू करेगा जो मेरे कार्यक्रम को शुरू करता है।
तो, बाहरी सॉफ़्टवेयर से संबंधित अनुरोध प्राप्त होने पर मेरे एप्लिकेशन को बंद करने का सही तरीका क्या है? मेरा आवेदन एक जीयूआई आवेदन है। इसलिए, मैं खिड़की को बंद करना चाहता हूं लेकिन मैं अपने कार्यक्रम द्वारा किए गए सभी प्रक्रियाओं को भी बंद करना चाहता हूं।
जोड़ा:
अधिक विशिष्ट होना करने के लिए, मैं सभी धागे मेरा कार्यक्रम द्वारा शुरू किया बंद करना चाहते हैं। मेरा प्रोग्राम किसी भी ओएस प्रक्रिया या किसी अन्य कार्यक्रम शुरू नहीं करता है।
@Roman: * * "मेरे कार्यक्रम द्वारा की गई प्रक्रियाओं" * * क्या आपका मतलब है कि आपके जावा प्रोग्राम चल रहे सभी थ्रेड चल रहे हैं या आपके प्रोग्राम को स्पॉन किया है, कहें, अन्य निष्पादन योग्य (अन * एक्स शैल प्रक्रियाएं, .exe, अन्य जावा प्रोग्राम उनके वीएम में चल रहा है, जो भी हो)? – SyntaxT3rr0r
@WizardOfOdds, मेरा मतलब है "मेरे जावा प्रोग्राम चल रहे सभी धागे चल रहे हैं"। – Roman
आपका प्रोग्राम कैसे लागू किया जाता है? क्या इसका कुछ तरीका पहले से चल रहे जावा प्रोग्राम द्वारा बुलाया गया है, तो प्रभावी रूप से दोनों एक प्रोग्राम बन गए हैं? या अन्य प्रोग्राम आपके प्रोग्राम के साथ एक नया जावा वीएम शुरू करने के लिए सिस्टम कॉल कर रहा है? –