Это связано с другим моим вопросом
После устранения очевидного (или так я думал) и самого большого потребителя памяти (изображений в кэше asp.net), мало что изменилось. В этой сети мы используем обработку исключений Enterprise Library (не знаю почему, но мы это делаем), и эти исключения не регистрируются. Для справки, сервер имеет 4 ГБ памяти, поэтому я не думаю, что проблема заключается в физической памяти.
Вот что происходит, согласно журналу событий:
Сначала я получаю это со страницы (редко с одной и той же страницы дважды):
Exception information:
Exception type: Exception
Exception message: mscorlib - Exception of type 'System.OutOfMemoryException' was thrown.
Тогда это:
Description:
An unhandled exception occurred and the process was terminated.
Application ID: /LM/W3SVC/672222825/Root
Process ID: 1544
Exception: System.OutOfMemoryException
Message: Exception of type 'System.OutOfMemoryException' was thrown.
StackTrace: at System.Threading.ExecutionContext.CreateCopy()
at System.Threading._TimerCallback.PerformTimerCallback(Object state)
У меня такой вопрос: как мне использовать профилировщик, чтобы увидеть, что вызывает сбой? Я пробовал два профилировщика - .net профилировщик памяти и dotTrace от JetBrains. Профилирование памяти на самом деле не дает мне ничего полезного, кроме того, что у меня много строк. Профилирование производительности также не помогает, потому что время выполнения функций все в порядке. Если эта ошибка возникает во время работы профилировщика, он просто прекращает профилирование - возможно, я его неправильно использую.
p.s. Извините за форму, сделал все, что мог.