Что означает код ошибки Windows 1001 (ERROR_STACK_OVERFLOW)?

 
Предыдущий Следующий
ERROR_SWAPERROR ERROR_INVALID_MESSAGE

ERROR_STACK_OVERFLOW

Что означает ERROR_STACK_OVERFLOW

ERROR_STACK_OVERFLOW — слишком глубокая рекурсия привела к переполнению стека.

Что проверить

Сохраните указатель стека, адрес инструкции и контекст раскрутки стека в момент исключения.

  • Проверьте переполнение или повреждение стека, метаданные раскрутки и соответствие таблицы функций загруженному модулю.
  • При переполнении буфера стека сначала анализируйте место повреждения памяти; последующий статус раскрутки стека часто является следствием.

Исходная формулировка

  • recursion too deep; the stack overflowed.
  • mutual recursion in parsers, visitors, serializers, or tree walkers.
  • large automatic arrays or structures allocated on the stack.
  • sizes of local variables, compiler options, and recent changes to frame layout.
  • Fix the algorithm or frame size before considering a larger stack. Convert recursive traversal to an explicit work stack where untrusted input can control depth, and enforce documented limits. A larger reserve can be appropriate only after measuring legitimate worst-case depth and its effect on process address space.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.