06-11-2010 05:27 AM
Hi,
I am getting the following Error on closing the TESTSTAND.
References to PropertyObjects were not released properly.
Total number of objects: 65570
Number of top-level objects: 199
Note: Some top-level objects may be included if they are referenced by
an incorrectly released top-level object. For example, an unreleased
SequenceContext object references a SequenceFile object.
The following top-level objects were not released:
SequenceContexts [3 object(s) not released]
SequenceContext #1:
The context last executed sequence 'Configure UUT Information' in file 'Common_ATE_SequentialModel.seq'.
SequenceContext #2:
The context last executed sequence 'PreUUT' in file 'Common_ATE_SequentialModel.seq'.
SequenceContext #3:
The context last executed sequence 'Test UUTs' in file 'Common_ATE_SequentialModel.seq'.
Files [1 object(s) not released]
SequenceFile #1:
Path: D:\Honeywell\CommonATE\TED\Framework 3.0\CommonATEModels\Common_ATE_SequentialModel.seq
Sequences [3 object(s) not released]
Sequence #1:
Name: Configure UUT Information
Sequence #2:
Name: PreUUT
Sequence #3:
Name: Test UUTs
Type Definitions [47 object(s) not released]
Type Definition #1:
Name: ModelOptions
Type Definition #2:
Name: NI_StationInfo
Type Definition #3:
Name: DatabaseOptions
Type Definition #4:
Name: NI_DatabaseOptionsSchema
Type Definition #5:
Name: NI_DatabaseOptionsStatement
Type Definition #6:
Name: NI_DatabaseOptionsColumn
How to release the resources used?
Am using some GUI's created in .Net Internally i doubt it creates the problem?
Help me in identifying this problem
Thanks in advance
Bharathi
06-11-2010 09:11 AM
06-11-2010 09:57 AM
Most likely it is the GUI that is not releasing things. If any TestStand objects aren't released before the TestStand Engine is destroyed then they are reported as leaks. .NET complicates things because it releases references only when garbage collection occurs. Look at our example C# UI for places in which GC.Collect() is done. Also if you get a sequence file using Engine.GetSequenceFile[Ex](), you need to make sure you release it when you are done with it using Engine.ReleaseSequenceFileEx.
Hope this helps,
-Doug