Saltar al contenido

¿Cuál es el comando para salir de una aplicación de consola en C #?

Solución:

Puedes usar Environment.Exit(0); y Application.Exit

Environment.Exit(0) es más limpio.

Varias opciones, por orden de la forma más adecuada:

  1. Devuelve un int del método Program.Main
  2. Lanza una excepción y no la manejes en ningún lado (úsala para situaciones de error inesperadas)
  3. Para forzar la terminación en otro lugar, System.Environment.Exit (¡no portátil! vea abajo)

Editado en 9/2013 para mejorar la legibilidad

Regresando con un código de salida específico: Como señala Servy en los comentarios, puede declarar Main con un int devuelve el tipo y devuelve un código de error de esa manera. Entonces realmente no hay necesidad de usar Environment.Salir a no ser que debe terminar con un código de salida y no puede hacerlo en el método Main. Lo más probable es que pueda evitarlo lanzando una excepción y devolviendo un código de error en Main si alguna excepción no controlada se propaga allí. Si la aplicación tiene varios subprocesos, probablemente necesitará aún más texto estándar para terminar correctamente con un código de salida, por lo que es mejor que simplemente llame a Environment.Salir.

Otro punto en contra de usar Evironment.Exit – incluso al escribir aplicaciones multiproceso – es reutilización. Si alguna vez desea reutilizar su código en un entorno que hace Environment.Exit irrelevante (como una biblioteca que puede usarse en un servidor web), el código no será portátil. La mejor solución sigue siendo, en mi opinión, usar siempre excepciones y / o valores de retorno que representen que el método alcanzó algún estado de error / finalización. De esa forma, siempre puede utilizar el mismo código en cualquier entorno .NET y en cualquier tipo de aplicación. Si está escribiendo específicamente una aplicación que necesita devolver un código de salida o terminar de una manera similar a lo que Environment.Exit lo hace, puede continuar y ajustar el hilo en el nivel más alto y manejar los errores / excepciones según sea necesario.

Las aplicaciones de consola se cerrarán cuando la función principal haya terminado de ejecutarse. Un “retorno” logrará esto.

    static void Main(string[] args)
    {
        while (true)
        {
            Console.WriteLine("I'm running!");
            return; //This will exit the console application's running thread
        }
    }

Si está devolviendo un código de error, puede hacerlo de esta manera, a la que se puede acceder desde funciones fuera del hilo inicial:

    System.Environment.Exit(-1);
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *