We are using C# Application For Developement.
We are using COM component for Rendering and Displaying Image File In ImageViewer.
Sometimes we got Weird System Error As ‘A new guard page for the stack cannot be created.’
After this error Application Get Exited.
Is any one have idea why this Error Arise ? As there is no specific case to replicate same error.
Thanks
asked Jul 16, 2014 at 11:56
4
I was having the same exception but in a different context. I was running a windows service to do some very heavy processment (no COM objects here).
In my case, I found a memory leak in my code that was producing the error «A new guard page for the stack cannot be created.» due to out of memory.
I know your question is now 2 years old.. Even though I’m sharing this to help any future reader. VS 2015 has now a nice tool to monitor memory usage during the debug.
——— Edit ——
Another common scenario for this exception is running out of stack due a recursive call.
answered Jun 20, 2016 at 11:20
Zé CarlosZé Carlos
3,5675 gold badges41 silver badges51 bronze badges
0
Possibly, Windows virtual memory was not set large enough, or not set to System Management.
Open File Explorer > right click This PC > Properties,

Advanced System Settings

Advanced tab > Performance section > Settings

Advanced tab, click Change

Select a drive, and click System Managed, don’t forget to click Set.

I had VR games crash on me until I remembered that I changed the page file size to a small size. Apparently my system needed more than 20 GB of ram and that caused crashes.
answered Feb 14, 2022 at 12:22
![]()
Jacob BruinsmaJacob Bruinsma
1,0671 gold badge10 silver badges23 bronze badges
You are using too much heavy processes using visual studio IDE
answered Oct 19, 2021 at 14:34
1
We are using C# Application For Developement.
We are using COM component for Rendering and Displaying Image File In ImageViewer.
Sometimes we got Weird System Error As ‘A new guard page for the stack cannot be created.’
After this error Application Get Exited.
Is any one have idea why this Error Arise ? As there is no specific case to replicate same error.
Thanks
asked Jul 16, 2014 at 11:56
4
I was having the same exception but in a different context. I was running a windows service to do some very heavy processment (no COM objects here).
In my case, I found a memory leak in my code that was producing the error «A new guard page for the stack cannot be created.» due to out of memory.
I know your question is now 2 years old.. Even though I’m sharing this to help any future reader. VS 2015 has now a nice tool to monitor memory usage during the debug.
——— Edit ——
Another common scenario for this exception is running out of stack due a recursive call.
answered Jun 20, 2016 at 11:20
Zé CarlosZé Carlos
3,5675 gold badges41 silver badges51 bronze badges
0
Possibly, Windows virtual memory was not set large enough, or not set to System Management.
Open File Explorer > right click This PC > Properties,

Advanced System Settings

Advanced tab > Performance section > Settings

Advanced tab, click Change

Select a drive, and click System Managed, don’t forget to click Set.

I had VR games crash on me until I remembered that I changed the page file size to a small size. Apparently my system needed more than 20 GB of ram and that caused crashes.
answered Feb 14, 2022 at 12:22
![]()
Jacob BruinsmaJacob Bruinsma
1,0671 gold badge10 silver badges23 bronze badges
You are using too much heavy processes using visual studio IDE
answered Oct 19, 2021 at 14:34
1
У меня есть служба Windows, которая выполняет некоторую интенсивную работу каждую минуту (на самом деле она запускает новый поток каждый раз, когда он синхронизируется с разными системами через http). Проблема в том, что через несколько дней он внезапно останавливается без сообщения об ошибке.
У меня есть NLog, и я зарегистрировался на AppDomain.CurrentDomain.UnhandledException. Последняя запись в журнале текстовых файлов — это обычная запись без каких-либо проблем. Просматривая журнал событий, я также не могу найти никаких сообщений в журнале приложений, однако в системном журнале есть две записи.
Один в основном говорит, что услуга была прекращена неожиданно. Больше ничего. Второе событие (одновременно с первым) говорит: «… Невозможно создать новую страницу защиты для стека …»
Из того, что я читал, вероятно, это исключение переполнения стека. Я не разбираю XML и не выполняю рекурсивную работу. Я размещаю веб-сервер с использованием Gate, Nancy и SignalR, а RavenDB работает во встроенном режиме. Каждую минуту новая задача запускается с использованием Taskfactory из .NET 4.0, и у меня также есть ContinueWith, где я перезапускаю System.Timers.Timer, чтобы запустить его снова через одну минуту.
Как я могу начать исследование этой проблемы? В чем могут быть возможные причины такой ошибки?
5 ответов
Лучший ответ
Основываясь на предоставленной вами информации, я бы как минимум сделал следующее:
- Обратите особое внимание на любые звонки третьих лиц и добавьте дополнительную информацию в журнал вокруг этих точек.
- Есть некоторые обстоятельства, при которых
AppDomain.CurrentDomain.UnhandledExceptionвам не поможет —StackOverflowException— один из них. Я считаю, что в этом случае CLR просто выдаст вам строку вместо трассировки стека. - Обратите особое внимание на области, в которых вводится более одного потока.
Пример часто упускаемого из виду StackOverflowException:
private string myString;
public string MyString { get { return MyString; } } //should be myString
18
Bryan Crosby
27 Июн 2012 в 04:29
На всякий случай, если у кого-то такая же проблема, в моем случае я обнаружил, что моя служба Windows случайно попала в бесконечный рекурсивный цикл. Поэтому, если у кого-то еще есть эта проблема, примите во внимание вызовы методов, которые могут вызывать огромные рекурсивные циклы.
1
Rolando Retana
4 Ноя 2015 в 09:59
Я получил это на конкретном компьютере и отследил его до объекта C #, ссылающегося на себя из инициализатора.
4
Kirsten
12 Мар 2018 в 07:12
Точно так же, как «за то, что стоит» — в моем случае об этой ошибке было сообщено, когда код пытался записать в журнал событий Windows, а у интерактивного пользователя не было достаточных разрешений. Это было небольшое консольное приложение, которое регистрировало исключения в текстовом файле и журнале событий (при желании). В исключительных случаях текстовый файл обновлялся, но затем возникла эта ошибка и не была обнаружена обработкой ошибок. Отключение регистрации событий остановило возникновение ошибки.
3
Kevin Newton
8 Авг 2014 в 14:42
Я думаю, что вы все можете быть озадачены тем, что это МОЖЕТ БЫТЬ аппаратный сбой SSD. Я получаю эту ошибку постоянно, играя в игры примерно каждые 3-5 часов, и ее файл подкачки моего компьютера каким-то образом выходит из строя … Я знаю, что это не ОЗУ, потому что я заменил свою комбинацию CPU / RAM / MOBO, пытаясь бороться с этим. И это не программирование, потому что разные игры и разные приложения выходят из строя одновременно, если только это не повреждение Windows?
Я могу ошибаться, но это всего лишь идея.
У меня два самсунг эво в рейде
-1
Matt R
30 Сен 2021 в 15:36