Export (0) Print
Expand All

Environment.FailFast Method

Terminates a process but does not execute any active try-finally blocks or finalizers.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

[SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.UnmanagedCode)]
public static void FailFast(
	string message
)

Parameters

message
Type: System.String

A message that explains why the process was terminated, or null if no explanation is provided.

The FailFast method writes a log entry to the Windows Application event log using the message parameter, creates a dump of your application, and then terminates the current process.

Use the FailFast method instead of the Exit method to terminate your application if the state of your application is damaged beyond repair, and executing your application's try-finally blocks and finalizers will corrupt program resources. The FailFast method terminates the current process, but does not execute any active try-finally blocks or finalizers.

The following code example writes a log entry to the Windows Application event log and terminates the current process.

// This code example demonstrates the Environment.FailFast()  
// method. 

using System;

class Sample 
{
    public static void Main() 
    {
    string causeOfFailure = "A castrophic failure has occured.";

// Assume your application has failed catastrophically and must  
// terminate immediately. The try-finally block is not executed  
// and is included only to demonstrate that instructions within  
// try-catch blocks and finalizers are not performed. 

    try 
        {
        Environment.FailFast(causeOfFailure);
        }
    finally
        {
        Console.WriteLine("This finally block will not be executed.");
        }
    }
}

/*
This code example produces the following results:

(No output is produced because the application is terminated. However, 
an entry is made in the Windows Application event log, and the log 
entry contains the text from the causeOfFailure variable.)

*/

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0

Community Additions

ADD
Show:
© 2014 Microsoft