I am working on a .NET application where there seems to be a memory leak. I know the answers in a text book that events should be unsubscribed, disposable objects must be deleted, etc.
I have a test post that can reproduce the error. In the finalizer of a certain class, I write to the console
public class Foo {
In the test harness, I create one instance of Foo (which, in turn, creates and interacts with hundreds of other types), then deletes it and calls the garbage collector.
I find that Foo Finalizer is never called. I have a similar class with this setting, which ends as a control test.
So my question is:
How can I determine if using commercial or open source exactly what the link to Foo contains?
I have a professional license for the dotTrace Memory profiler, but I cannot figure out how to use it from the help files.
Update: Now I am using dotMemory 4.0 , which is the successor to the (good, but unusable) dotTrace Memory 3.5.
Dr. Abt
source share