Высокий% памяти используется неуправляемыми ресурсами в приложении.NET

У меня есть веб-сайт, который выполняет простые запросы MDX и производит вывод. Этот вывод используется для создания файла Excel. Я использовал профилировщик ANTS и узнал, что большой объем памяти используется неуправляемыми ресурсами. Проверьте изображение ниже:

( Изображение в полном размере)

Что мне делать дальше, чтобы обнаружить такие утечки памяти. Я хочу выяснить, почему эти объекты все еще живы в памяти. Пожалуйста, предложите, что мне делать дальше.

( Изображение в полном размере)

1 ответ

У меня возникла похожая проблема. У меня нет решения для обнаружения утечки памяти, но я дам вам знать путь, который я выбрал. Вместо вызова MDX прямо со страницы я переместил запросы MDX в хранимую процедуру SQL, которая возвращает набор результатов, который я могу использовать, как если бы это был реляционный запрос.

CREATE procedure [dbo].[executeMdxQuery]
as
Declare @sql nvarchar(max) = '  SELECT a.* FROM OpenQuery("MY_SERVER",'' 

with member [Measures].[Fiscal Calendar Level] as ' --- remaining MDX 

exec sp_executesql @sql 
GO

Надеюсь это поможет

Другие вопросы по тегам