Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

StackOverflowException (Clase)

Excepción que se produce cuando la pila de ejecución se desborda debido a que contiene demasiadas llamadas a métodos anidadas. Esta clase no puede heredarse.

System.Object
  System.Exception
    System.SystemException
      System.StackOverflowException

Espacio de nombres:  System
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class StackOverflowException : SystemException

El tipo StackOverflowException expone los siguientes miembros.

  NombreDescripción
Método públicoCompatible con XNA FrameworkStackOverflowException()Inicializa una nueva instancia de la clase StackOverflowException, estableciendo la propiedad Message de una nueva instancia en un mensaje proporcionado por el sistema que describe el error, como "La operación solicitada provocó un desbordamiento de la pila". Este mensaje tiene en cuenta la referencia cultural del sistema actual.
Método públicoCompatible con XNA FrameworkStackOverflowException(String)Inicializa una nueva instancia de la clase StackOverflowException con el mensaje de error especificado.
Método públicoCompatible con XNA FrameworkStackOverflowException(String, Exception)Inicializa una nueva instancia de la clase StackOverflowException con un mensaje de error especificado y una referencia a la excepción interna que representa la causa de esta excepción.
Arriba

  NombreDescripción
Propiedad públicaDataObtiene una colección de pares clave-valor que proporcionan información adicional definida por el usuario acerca de la excepción. (Se hereda de Exception).
Propiedad públicaHelpLinkObtiene o establece un vínculo al archivo de ayuda asociado a esta excepción. (Se hereda de Exception).
Propiedad públicaHResultObtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica. (Se hereda de Exception).
Propiedad públicaCompatible con XNA FrameworkInnerExceptionObtiene la instancia Exception que produjo la excepción actual. (Se hereda de Exception).
Propiedad públicaCompatible con XNA FrameworkMessageObtiene un mensaje que describe la excepción actual. (Se hereda de Exception).
Propiedad públicaSourceDevuelve o establece el nombre de la aplicación o del objeto que generó el error. (Se hereda de Exception).
Propiedad públicaCompatible con XNA FrameworkStackTraceObtiene una representación de cadena de los marcos inmediatos en la pila de llamadas. (Se hereda de Exception).
Propiedad públicaTargetSiteObtiene el método que produjo la excepción actual. (Se hereda de Exception).
Arriba

  NombreDescripción
Método públicoCompatible con XNA FrameworkEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkGetBaseExceptionCuando se reemplaza en una clase derivada, devuelve la clase Exception que representa la causa principal de una o más excepciones posteriores. (Se hereda de Exception).
Método públicoCompatible con XNA FrameworkGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetObjectDataCuando se reemplaza en una clase derivada, establece SerializationInfo con información sobre la excepción. (Se hereda de Exception).
Método públicoCompatible con XNA FrameworkGetTypeObtiene el tipo en tiempo de ejecución de la instancia actual. (Se hereda de Exception).

En XNA Framework 3.0, este miembro se hereda de Object.GetType().
Método públicoCompatible con XNA FrameworkToStringCrea y devuelve una representación de cadena de la excepción actual. (Se hereda de Exception).
Arriba

Se produce StackOverflowException para los errores de desbordamiento de la pila de ejecución, normalmente en caso de recursividad muy profunda o sin enlazar. La instrucción del Lenguaje intermedio de Microsoft (MSIL) Localloc produce StackOverflowException.

StackOverflowException utiliza HRESULT COR_E_STACKOVERFLOW, que tiene el valor 0x800703E9. Para obtener una lista con los valores de propiedad iniciales de un objeto StackOverflowException, vea los constructores StackOverflowException.

NotaNota

El valor de la propiedad heredad Data es siempre null.

Consideraciones de versión

En las versiones anteriores de .NET Framework, la aplicación puede detectar un objeto StackOverflowException (por ejemplo, para recuperarse de una recursividad ilimitada) . Sin embargo, en la actualidad se recomienda no utilizar dicha práctica puesto que es necesaria una importante cantidad de código adicional para detectar con fiabilidad una excepción de desbordamiento de pila y continuar con la ejecución del programa.

A partir de la versión 2.0 de .NET Framework, no es posible detectar un objeto StackOverflowException mediante un bloque try-catch y el proceso correspondiente se finaliza de manera predeterminada. Por consiguiente, se aconseja que los usuarios escriban su código para detectar y evitar un desbordamiento de pila. Por ejemplo, si la aplicación depende de la recursividad, utilice un contador o una condición de estado para terminar el bucle recursivo. Tenga en cuenta que una aplicación que hospeda Common Language Runtime (CLR) puede especificar que CLR descargue el dominio de aplicación cuando se produzca una excepción de desbordamiento de pila y el proceso correspondiente pueda continuar. Para obtener más información, vea ICLRPolicyManager (Interfaz) y Información general de hospedaje.

Nota de la plataforma Windows 95, Windows 98, Windows 98 Segunda Edición, Windows Millennium Edition: Un bloque try-catch no puede detectar una excepción StackOverflowException iniciada. Por tanto, la excepción hace que el proceso finalice inmediatamente.

.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

.NET para aplicaciones de Windows Phone

Compatible con: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft