jetperch / pyjoulescope_ui

Joulescope graphical user interface
https://www.joulescope.com
Apache License 2.0
75 stars 23 forks source link

Memory growth when switching views #187

Closed mliberty1 closed 1 year ago

mliberty1 commented 1 year ago

Joulescope model

JS220

UI version

1.0.16

What OS are you seeing the problem on?

Windows 11

What happened?

Memory usage grows when repeatedly switch views. For example, if I toggle back and forth between Waveform and Multimeter a bunch of times, then the memory increase from 865 MB to 972 MB. It never returns back to the original 858 MB.

If I then toggle it another ~10 times, the memory increases to 1056 MB.

What was expected?

The UI memory usage may increase while switching views, but it should return to roughly the original value.

How to reproduce?

See "What happened?".

Extra information

Likely have a memory leak (holding onto a reference from the old view) or a circular reference preventing cleanup.

mliberty1 commented 1 year ago

Fixed in 1.0.18. I may still be seeing memory growth when switching views, but it does not seem to continue to grow after more view switches. While we still need to do further testing, at least the worst offender has been fixed.