Consultor Eletrônico



Kbase P168443: DELETE OBJECT on .NET object does not cause object destructor to be called
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   18/10/2010
Status: Unverified

SYMPTOM(s):

DELETE OBJECT on .NET object does not cause object destructor to be called

Calling DELETE OBJECT statement on a .NET object reference

.NET destructor is not fired immediately

.NET destructor is fired at some later point in time

FACT(s) (Environment):

Windows
OpenEdge 10.2x

CAUSE:


This is expected behavior.

When DELETE OBJECT is called for a .NET class instance, we can?t invoke the class destructor because the .NET framework simply does not allow this.

Instead the DELETE OBJECT statement removes all ABL references to the instance and let the .NET garbage collector handle the actual deletion.

The end result is that the object can no longer be accessed from within the ABL code, but the destructor won?t run until the .NET garbage collector gets around to cleaning up the object.

FIX:

None. The product is behaving as expected