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 máquina 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.
Nota |
|---|
| El valor de esta propiedad Data heredada siempre es referencia de objeto null (Nothing en Visual Basic). |
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 aloja 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 y Alojar Common Language Runtime.
Nota de la plataforma Windows 95, Windows 98, Windows 98 segunda edición, Windows Millennium:
Un bloque try-catch no puede detectar una excepción StackOverflowException iniciada. Por tanto, la excepción hace que el proceso finalice inmediatamente.