Yanıtlar:
Kullanabilirsiniz Environment.Exit(0);
veApplication.Exit
Environment.Exit(0)
daha temiz .
Environment.Exit
bazıları için zahmetli olabilecek SecurityPermissionFlag.UnmanagedCode izinlerine sahip olmanızı gerektirir.
En uygun şekilde sırayla çeşitli seçenekler:
System.Environment.Exit
( taşınabilir değil! Aşağıya bakın )Okunabilirliği artırmak için 9/2013 tarihinde düzenlendi
Belirli bir çıkış koduyla geri dönme : Servy'nin açıklamalarda belirttiği gibi, Main'i bir int
dönüş türüyle bildirebilir ve bu şekilde bir hata kodu döndürebilirsiniz. Bu nedenle, gerçekten bir çıkış koduyla sonlandırmanız gerekmediği ve muhtemelen Ana yöntemde yapamayacağı sürece Environment.Exit'i kullanmaya gerek yoktur . Büyük olasılıkla bir istisna atarak ve işlenmemiş bir istisna orada yayılırsa Main'de bir hata kodu döndürerek bundan kaçınabilirsiniz. Uygulama çok iş parçacıklıysa, bir çıkış koduyla düzgün bir şekilde sonlandırmak için muhtemelen daha fazla kazan plakasına ihtiyacınız olacaktır, böylece yalnızca Environment.Exit'i çağırmak daha iyi olabilir.
Kullanıma karşı bir başka nokta Evironment.Exit
- çok iş parçacıklı uygulamalar yazarken bile - yeniden kullanılabilirliktir . Kodunuzu Environment.Exit
alakasız kılan bir ortamda (web sunucusunda kullanılabilecek bir kitaplık gibi) yeniden kullanmak isterseniz , kod taşınabilir olmaz. En iyi çözüm, bence, yöntemin bazı hata / bitiş durumuna ulaştığını temsil eden istisnalar ve / veya dönüş değerleri kullanmaktır. Bu şekilde, her zaman aynı kodu herhangi bir .NET ortamında ve her tür uygulamada kullanabilirsiniz. Özellikle bir çıkış kodu döndürmesi veya buna benzer bir şekilde sonlanması gereken bir uygulama Environment.Exit
yazıyorsanız, daha sonra iş parçacığını en üst düzeyde sarabilir ve hataları / istisnaları gerektiği gibi işleyebilirsiniz.
Ana işlev çalışmayı bitirdiğinde konsol uygulamaları çıkacaktır. Bir "geri dönüş" bunu başaracaktır.
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("I'm running!");
return; //This will exit the console application's running thread
}
}
Bir hata kodu döndürüyorsanız, bunu ilk iş parçacığının dışındaki işlevlerden erişilebilen şekilde yapabilirsiniz:
System.Environment.Exit(-1);
Sen kullanabilirsiniz Environment.Exit(0)
ve Application.Exit
.
Environment.Exit()
: bu işlemi sonlandırır ve temel işletim sistemine belirtilen çıkış kodunu verir.