Environment.Exit(Int32) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Terminates this process and returns an exit code to the operating system.
public:
static void Exit(int exitCode);
public static void Exit(int exitCode);
static member Exit : int -> unit
Public Shared Sub Exit (exitCode As Integer)
Parameters
- exitCode
- Int32
The exit code to return to the operating system. Use 0 (zero) to indicate that the process completed successfully.
Exceptions
The caller does not have sufficient security permission to perform this function.
Remarks
For the exitCode parameter, use a non-zero number to indicate an error. In your application, you can define your own error codes in an enumeration, and return the appropriate error code based on the scenario. For example, return a value of 1 to indicate that the required file is not present, and a value of 2 to indicate that the file is in the wrong format. For a list of exit codes used by the Windows operating system, see System Error Codes in the Windows documentation.
Calling the Exit method differs from using your programming language's return statement in the following ways:
Exit always terminates an application. Using the
returnstatement may terminate an application only if it is used in the application entry point, such as in theMainmethod.Exit terminates an application immediately, even if other threads are running. If the
returnstatement is called in the application entry point, it causes an application to terminate only after all foreground threads have terminated.Exit requires the caller to have permission to call unmanaged code. The
returnstatement does not.If Exit is called from a
tryorcatchblock, the code in anyfinallyblock does not execute. If thereturnstatement is used, the code in thefinallyblock does execute.If Exit is called when code in a constrained execution region (CER) is running, the CER will not complete execution. If the
returnstatement is used, the CER completes execution.