मैं यह पता लगाने की कोशिश कर रहा हूं कि मुझे किस का उपयोग करना चाहिए। डायलॉग मोड में एक फॉर्म की मेरी WinForm ऐप आग को बंद करने पर। वह फॉर्म एक पृष्ठभूमि कार्यकर्ता चलाता है जो दूरस्थ डीबी के साथ डीबी सिंक करता है और "स्पलैश फॉर्म" पर इसकी प्रगति प्रदर्शित करता है। -> बाहर निकलें और घटना मेंआवेदन। एक्सिट() बनाम आवेदन। एक्सिट थ्रेड() बनाम पर्यावरण। एक्सिट()
private void CloseMyApp()
{
SaveUserSettings();
splashForm = new SplashForm();
splashForm.ShowDialog();
Application.ExitThread();
//Application.Exit();
}
जो है मैं क्या मेनू से मेरी ऐप को बंद करने के लिए कॉल:
मैं बहुत की तरह एक विधि है। Application.Exit()
निम्नलिखित त्रुटि देता है ->
संग्रह संशोधित किया गया था; गणना ऑपरेशन निष्पादित नहीं हो सकता है।
अब मैंने पढ़ा है कि Environment.Exit()
क्रूर है और वहाँ शायद कुछ अपने अनुप्रयोग के साथ गलत (here देखें) का मतलब है।
Application.ExitThread()
काम करता है लेकिन मुझे आश्चर्य है कि यह केवल काम करने के लिए अपरिपक्व हो सकता है और जैसा कि मैंने यह सुनिश्चित नहीं किया है कि यह सामान्य रूप से ऐसा करने के लिए उचित नहीं है।
या यदि आपको शीर्ष स्तर के त्रुटि हैंडलर में त्रुटि पकड़ने के बाद तेज़ विफल होने की आवश्यकता है, तो निश्चित रूप से लॉग इन करने के बाद, निश्चित रूप से। –