killall может решить вашу проблему. Пожалуйста, проверьте руководство для деталей.
Существует много инструментов статического анализа, которые могут помочь здесь.
И CodeRush/Refactor Pro и Resharper будут, во время кода, в Visual Studio, показывать Вам не склонные объекты.
И FxCop, теперь упакованный как часть Анализа кода Visual Studio, может генерировать предупреждения времени компиляции для не склонных местных жителей и участников класса.
Деструктор класса называют, когда сборщик "мусора" наконец очищает классы, которые больше не используются. То, что Вы могли сделать, помещается регистрация деструктора, которые "Располагают", был назван. Это рекомендуется против фактического использования деструктора, но для тестирования, это может быть полезно.
Единственная проблема с этим методом состоит в том, что необходимо будет создать собственный класс, который наследовался тому, который необходимо протестировать на IDispose и переопределить Расположить метод (таким образом, можно установить флаг, говоря, что это назвали), инициализируйте флаг в конструкторе и проверьте его в деструктор (который Вы реализуете с "~ClassName () {...}")
get (n)
для связанных списков не является постоянной операцией для классов, расширяющих AbstractSequentityList
; это O (n)
. Из AbstractSequentityList # get (int index) :
Эта реализация сначала получает итератор списка, указывающий на индексированный элемент (с
listIterator (index)
). Затем он получает элемент с помощьюListIterator.next
и возвращает его.
Как правило, вы не хотите осуществлять произвольный доступ к коллекциям, которые не реализуют интерфейс маркеров java.util.RandomAccess
.
Как правило, реализация List должна реализовывать этот интерфейс, если для типичных экземпляров класса этот цикл:
для (int i = 0, n = list.size (); i < n; i++) list.get (i);
выполняется быстрее, чем этот цикл:
для (Iterator i = list.iterator (); i.hasNext ();) i.next ();
В Java SE 6 реализующими классами являются ArrayList, AttribureList, SunOnWriteArrayList, RureList, RureUnresolvedList, Stack, Vector
.
Ядром проекта Mono является JITter для MSIL (промежуточный язык, создаваемый компиляторами .NET).
Конечно, компилятор Just-in-Time по-прежнему является компилятором, и вы можете просто взять собственный код, созданный процессом JIT, и запустить его позже. В зависимости от JITter, он может предоставить объекты для этого.
-121--2882603-Профилировщик памяти ANTS из red-gate поможет с этим во время выполнения. Это один из моих любимых инструментов.