Cleaning Memory Resources Correctly 101

By Nikolai Arsenov
Software Developer & Quality Control Specialist
For cleaning memory resources efficiently, application should dispose existing objects before clearing related collection.
LightningChart provides predefined collections, e.g. XAxes, YAxes, PaletteSteps, etc. in WinForms and WPF Non-bindable platforms. In WPF Semi-bindable and Bindable platforms they should be created manually (e.g. ViewXY.CreateDefaultXAxes()). Moreover, a user’s application can have created collections of series, annotations, markers, cursors, etc.
If a user needs to recreate new specific collection for the chart without modifying the existing one, the old collection should be removed properly to use memory resources efficiently.
The following lines clean y-axes collection. However, the resources inside the application have not been freed, and they still reserve memory.
chart.ViewXY.YAxes.Clear();
Instead of using .Clear() method for collection, call .Dispose() for each item and clean the collection. Dispose method releases any resources from memory for clean-up:
foreach (AxisY yAxis in chart.ViewXY.YAxes)
yAxis.Dispose();
chart.ViewXY.YAxes.Clear();
// Create new Y-axes collection
for (int axisY = 0; axisY < axisYCounter; axisY++)
{
// Create your axes here
}
In our Demo applications, we have an auxiliary method to make proper resource cleaning:
ExampleUtils.DisposeAllAndClear(chart.ViewXY.YAxes);
WPF 3D Maps
Written by a human | Updated on April 23rd, 2025WPF 3D MapsHello! In this article, we will focus on the theory behind WPF 3D maps. It will also serve as an introduction to creating this type of chart using the Lightning Chart .NET tools. If you have seen our previous...
XY Zoom Bar Chart
XY Zoom Bar ChartToday we will continue working with XY charts, but now we will have two charts within the same project. A chart will traditionally display a signal while the other chart will serve as an analysis tool showing us the area of the signal we are studying....
Cardiac Telemetry
Written by a human | Updated on April 23rd, 2025What is Cardiac Telemetry?Cardiac telemetry is a method used in healthcare to continuously monitor and track the health parameters of individuals diagnosed with heart conditions or those recovering from heart-related...
