Переменная / Ram просмотра для .NET? - PullRequest
1 голос
/ 04 декабря 2008

Я использую Office Automation в .NET. Это оставляет программу Excel.exe. Я знаю исправление - это все о точном определении переменных. После того как я определюсь, я могу правильно отменить выделение памяти, и GC очистит их.

Проблема в том, что мне нужно пройти буквально тысячи строк кода. Поэтому мне интересно: есть ли какая-нибудь утилита в .net (или сторонней), которая способна показать мне список переменных, для которых я по-прежнему выделил ram? Если это так, я бы смог нацелиться на эти предметы и специально отменить их выделение.

Спасибо

Ryan

Ответы [ 2 ]

1 голос
/ 04 декабря 2008
0 голосов
/ 04 декабря 2008

Просто чтобы прояснить ситуацию, вам нужно явно выйти из Excel после того, как вы закончили использовать его через автоматизацию. Если вы этого не сделаете, экземпляр будет продолжать работать, даже если ваши переменные выходят из области видимости и запускается сборка мусора. Я считаю, что это команда Quit ():

Excel.ApplicationClass excel = new Excel.ApplicationClass();
//do some work with Excel
excel.Quit();

Я бы порекомендовал вам сделать это с помощью try / catch / finally

Excel.ApplicationClass excel = null;

try
{
  excel = new Excel.ApplicationClass();
  //do some Excel work
}
catch(Exception ex)
{
  //log exception
  throw;
}
finally
{
  if(excel != null)
    excel.Quit();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...