जवाबों:
आप उपयोग कर सकते हैं Environment.Exit(0);
औरApplication.Exit
Environment.Exit(0)
क्लीनर है ।
Environment.Exit
आवश्यक है कि आपके पास SecurityPermissionFlag.UnmanagedCode अनुमतियां - जो कुछ के लिए परेशानी वाली हो सकती हैं।
कई विकल्प, सबसे उपयुक्त तरीके से आदेश:
System.Environment.Exit
( पोर्टेबल नहीं! नीचे देखें )पठनीयता में सुधार के लिए 9/2013 को संपादित किया गया
एक विशिष्ट निकास कोड के साथ लौटना: जैसा कि सर्विसे टिप्पणियों में बताते हैं, आप मुख्य को int
रिटर्न प्रकार के साथ घोषित कर सकते हैं और इस तरह से एक त्रुटि कोड वापस कर सकते हैं। तो वास्तव में पर्यावरण का उपयोग करने की कोई आवश्यकता नहीं है। तब तक बाहर निकलें जब तक आपको एक एक्जिट कोड के साथ समाप्त करने की आवश्यकता न हो और मुख्य विधि में संभवतः ऐसा न कर सकें। सबसे शायद आप एक अपवाद को फेंकने से बच सकते हैं, और मुख्य में एक त्रुटि कोड वापस कर सकते हैं यदि कोई अखंड अपवाद वहां प्रचारित करता है। यदि एप्लिकेशन बहु-थ्रेडेड है, तो शायद आपको बाहर निकलने के कोड के साथ ठीक से समाप्त करने के लिए और भी अधिक बॉयलरप्लेट की आवश्यकता होगी ताकि आप पर्यावरण को कॉल करने से बेहतर हो सकें।
Evironment.Exit
बहु-थ्रेडेड एप्लिकेशन लिखते समय भी उपयोग करने के खिलाफ एक और बिंदु - पुन: प्रयोज्य है । यदि आप कभी भी अपने कोड का उपयोग ऐसे वातावरण में करना चाहते हैं जो Environment.Exit
अप्रासंगिक बनाता है (जैसे कि एक पुस्तकालय जो वेब सर्वर में उपयोग किया जा सकता है), तो कोड पोर्टेबल नहीं होगा। सबसे अच्छा समाधान अभी भी है, मेरी राय में, हमेशा अपवादों और / या मूल्यों का उपयोग करने के लिए जो प्रतिनिधित्व करते हैं कि विधि कुछ त्रुटि / खत्म स्थिति तक पहुंच गई है। इस तरह, आप हमेशा किसी भी .NET वातावरण में, और किसी भी प्रकार के एप्लिकेशन में एक ही कोड का उपयोग कर सकते हैं। यदि आप विशेष रूप से एक ऐप लिख रहे हैं, जो एक एक्जिट कोड को वापस करने की जरूरत है या जो Environment.Exit
करता है उसके समान तरीके से समाप्त करने के लिए , आप तब आगे बढ़ सकते हैं और उच्चतम स्तर पर थ्रेड को लपेट सकते हैं और आवश्यकतानुसार त्रुटियों / अपवादों को संभाल सकते हैं।
कंसोल फ़ंक्शन से बाहर निकल जाएगा जब मुख्य फ़ंक्शन ने चलना समाप्त कर दिया है। एक "वापसी" यह हासिल करेगा।
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("I'm running!");
return; //This will exit the console application's running thread
}
}
यदि आप एक त्रुटि कोड वापस कर रहे हैं, तो आप इसे इस तरह से कर सकते हैं, जो प्रारंभिक थ्रेड के बाहर के कार्यों से सुलभ है:
System.Environment.Exit(-1);
आप उपयोग कर सकते हैं Environment.Exit(0)
और Application.Exit
।
Environment.Exit()
: इस प्रक्रिया को समाप्त करता है और अंतर्निहित ऑपरेटिंग सिस्टम को निर्दिष्ट निकास कोड देता है।