Thanks for your suggestions, @J-Hilk
@J-Hilk said in Slow application with low CPU usage:
I would suggest emitting a signal, signalling data is processed, and then a mutex guarded getter function, that allows the other thread to access the required data.
I'm not sure I understand what you mean. Should each object have a mutex-guarded getter function? Should the objects be in different threads? In this case, wouldn't the emitted signal get queued?
I'd appreciate it if you could provide me an example and/or some material for further reading.
Another idea that has occurred to me is that I could use two threads, one for processing and one for GUI (this one updated just from time to time). Do you think it would make sense? My concern is that the processing thread must be fast enough to complete its cycle before a new piece of data comes in.
If this is the case, would it be necessary to use a mutex anyway?