We have implemented several changes that will enable you to diagnose and eliminate potential memory leaks more quickly, and will make it easier to investigate problems associated with acquiring and releasing of licenses.
Search of circular references
The 1C:Enterprise 8 platform uses the object lifetime management strategy that is based on object reference counting. This strategy can be described as follows. Each object of the platform contains a reference count. When a reference to an object appears (when an object is assigned to a variable), the count increases by one, when such reference is removed - the count value decreases by one. When the object reference count equals zero, the object is automatically destroyed, and the memory occupied by it is freed up.
One of the peculiarities of object reference counting is the possibility of implementing a circular reference. A circular reference occurs when objects start to refer to each other. For example, if there are objects nested inside other objects, and somewhere deep inside, they refer to the topmost object. The result is a circular reference. In the simplified form, a circular reference can be created as follows: