Memory leak when closing a tab/tabs

Hi,

When I tried to close a tab/other tabs/all tabs, I found there might be a memory leak problem in TabControlExt. It seems that GC does not collect garbage because TabItem objects are held by something, I guess. An alternative is to add a global timer to force GC to perform garbage collection within a specified interval. The memory usage will be reduced significantly after a while when "Close all tabs" or "Close all tabs but this" is selected. However, it does not apply to closing a single tab. I think this solution is not that good and I wonder if I could get the root cause and a suitable solution from you. The CloseMode of TabControlExt is Delete.

Regards,
Arvin

12 Replies 1 reply marked as answer

UN Unknown Syncfusion Team August 17, 2020 07:36 AM UTC

Hi Arwin, 

Thanks for contacting Syncfusion support. 

We have checked your query “There might be memory leak issue in TabControlExt when removing tab items” and we have checked the reported issue using JetBrains profiler where both TabControlExt and MS TabControl are checked for memory leak under same operation and they both work fine without any memory leak. Whereas forcing the GC worked same for all Close / CloseAllButThis / CloseAll functions. The memory occupied by TabControlExt in overall process remains below 85 MB similar to 55 MB in MS TabControl. 

Regards, 
Niranjan Kumar Gopalan 



AR ArvinZJC August 29, 2020 09:06 AM UTC

Hi Niranjan,

I have rechecked my program, and most controls of it are the Syncfusion ones. Unfortunately, I could not locate the cause of high memory consumption when tabs had already been closed. My program has been attached and I was wondering if you could help me to sort out the wrong things.

I define a user control in the CS file "StrikePriceVolumeTab.cs" and use it as the content of tabs (TabItemExt). I added 10 tabs and the program occupied about 300 MB memory. When I close one tab/other tabs/all tabs, the memory usage still remained high. Previously, I tried to force GC in the specified functions when tabs are closed. However, it had few effects.

Anyway, thank you for your reply!

Regards,
Arvin

Attachment: ShSzStockHelper_edb60b00.zip


UN Unknown Syncfusion Team August 31, 2020 12:24 PM UTC

Hi Arvin, 

Thanks for your update. 

We are able to reproduce the memory occupied issue when TabControlExt tab items are removed by other than using TabClose option and logged it as bug. We will provide analyzed information tomorrow (September 1, 2020). We appreciate your patience until then. 

Regards, 
Niranjan Kumar Gopalan 



UN Unknown Syncfusion Team September 1, 2020 10:51 AM UTC

Hi Arvin, 

Thanks for your patience. 

The fix for the reported issue will be included in Volume 3 release which will roll out by end of September, 2020. Can you wait until then ? Otherwise we can provide you patch in your Syncfusion version on September 16, 2020. Please share us your current Syncfusion version and refer the below feedback for same. 

 
Regards, 
Niranjan Kumar Gopalan 



AR ArvinZJC September 1, 2020 01:27 PM UTC

Hi Niranjan,

Thanks for your reply!

My Syncfusion version is 18.2.0.44. I would like to just wait for the release of Volume 3.

Regards,
Arvin


UN Unknown Syncfusion Team September 2, 2020 04:30 AM UTC

Hi Arvin, 

Thanks for your update. 

We will update you once the Volume 3 release rolls out. We appreciate your patience until then. 

Regards, 
Niranjan Kumar Gopalan 



AS Arvin Staff October 11, 2020 11:42 AM UTC

Hi,

Has this issue been fixed in Volume 3?

Regards,
Arvin


EM Elakkiya Muthukumarasamy Syncfusion Team October 12, 2020 08:45 AM UTC

Hi Arvin,  
 
Sorry for the inconvenience caused. 
 
Due to some complexities faced while implementing the reported feature” Memory consumption is high, when tab items in TabControlExt are removed by option other than TabClose , we could not able to complete this implementation. We will work and include this implementation in Volume 3 SP1 release which is expected to be rolled out by the month of November, 2020. We will intimate you once the release get rolled out. We will appreciate your patience until then. 
 
Regards, 
Elakkiya M. 



AS Arvin Staff December 24, 2020 02:36 PM UTC

Hi,

I was wondering if this issue is fixed in the latest NuGet version.

Regards,
Arvin


BR Bharathi Rajakantham Syncfusion Team December 28, 2020 12:56 PM UTC

Hi Arvin, 
 
Sorry for the delay, 
 
We have faced some complexities in the reported feature ”Memory Consumption is high, when the Tabitems in TabControlExt is removed by option other than TabClose” from our end hence the delay occurs. The Patch for this fix will be delivered in our upcoming Volume 4 Sp1 2021 release which is estimated to be on January end. We will intimate you once it gets published and appreciate your patience until then. 
 
Regards, 
Bharathi R 



AS Arvin Staff April 9, 2021 04:48 AM UTC

Hi,

Could you tell me if this issue is fixed in the latest NuGet version?

Regards,
Arvin


SG Sangeetha Ganesan Syncfusion Team April 12, 2021 08:17 AM UTC

Hi Arvin, 
 
Thanks for your patience, sorry for the inconvenience caused. 
 
We already updated the response in feedback. Please find the feedback link and response for the reported feature ”Memory Consumption is high, when the Tabitems in TabControlExt is removed by option other than TabClose”. 
 
 
Marimuthu Sivalingam commented on Feb 01, 2021 2:06 AM  
We were checked the reported behavior with MS control and the same behavior occurred in MS TabControl also. Because Syncfusion TabControlExt derived from MS TabControl. Also, we are checking the memory usage after some time the memory has been released. So, this is not a valid issue. Also, we have attached the modified sample with MS TabControl. Please let us know if you have any other further assistance regarding this. 
 
Sample : 
 
 
Please let us know if you need any further assistance on this. We will be glad to assist you. 
 
Regards, 
 
Sangeetha G 


Marked as answer
Loader.
Up arrow icon