Supposing the following scenario:
C# .NET application that has some iterations.
- after I run iteration 1 I do a snapshot - S1.
- I run iteration 2, here some (not all of them - leak) object from iteration 1 should be destroyed (should not be referred anymore) and new ones are created. When it finish I do a memory snapshot - S2.
- I run iteration 3 and some object previously created at iteration 2 are destroyed - not all of them that's the funny part - and new ones are created. This new ones are not destroyed until the end of iteration - and should not be. After iteration 3 ends, I take a memory snapshot - S3.
Idea is that object allocated in previous iteration are destroyed in current ones and I can do snapshots only between iteration - otherwise will be something messy. Also, there are a lot of objects so tracing them by hand is not an option.
Now if I compare S3 with S2 I see all object allocated (ans should be allocated) but also old one that are not destroyed.
I need some kind of object allocated into iteration one (I1) and not destroyed into I2 and object allocated into I2 and not destroyed in I3.
Any idea how could I do this?
By the - way it takes so long to buy a license...I order it 1 week ago and still I don't have serial number.