Scanbot SDK
Loading...
Searching...
No Matches
ImageRefProfiler

ImageRef memory profiler. More...

Public Member Functions

ImageRefPoolSnapshot make_snapshot (cls)
 Returns a snapshot of all alive ImageRefs.
 
None enable_detailed_profiling (cls)
 After the function is called, ImageRefs will store additional information, such as source from which they were created.
 
ImageRefPoolSnapshotsDiff diff (cls, *, ImageRefPoolSnapshot first_snapshot, ImageRefPoolSnapshot second_snapshot)
 Computes difference between two snapshots.
 

Detailed Description

ImageRef memory profiler.

ImageRefs are reference-counted. If references aren't correctly released for whatever reason, the image memory will leak. Leaking memory over time may cause out-of-memory crashes and must be avoided. The profiler can return basic and detailed information about all currently alive ImageRefs, that can be useful to track leaking ImageRefs or to confirm that there are no leaks.

Member Function Documentation

◆ diff()

ImageRefPoolSnapshotsDiff diff ( cls,
* ,
ImageRefPoolSnapshot first_snapshot,
ImageRefPoolSnapshot second_snapshot )

Computes difference between two snapshots.

To confirm that a particular operation doesn't leak, take a snapshot before and after the operation, and check that the diff doesn't contain any unexpected new ImageRefs.

Parameters
first_snapshotSnapshot that was taken earlier
second_snapshotSnapshot that was taken later
Returns
Difference between two snapshots

◆ enable_detailed_profiling()

None enable_detailed_profiling ( cls)

After the function is called, ImageRefs will store additional information, such as source from which they were created.

This information may be important when trying to understand a profile. This function must be called BEFORE the first ImageRef is created, otherwise details may be lost.

◆ make_snapshot()

ImageRefPoolSnapshot make_snapshot ( cls)

Returns a snapshot of all alive ImageRefs.

The snapshot contains a list of ImageRefs with information such as in-memory size. If detailed profiling is enabled (by calling enableDetailedProfiling beforehand), the profile will contain additional information such as the source from which each ImageRef has been created.

Returns
The snapshot of all alive ImageRefs.

The documentation for this class was generated from the following file: