I have set up connections that are of type auto connection. The signals are sent across threads so they are queued connections in those instances. We are seeing serious mem growth per message emitted even with the slot doing absolutely nothing other than saying "i got called". So we know that the correct number of slots are getting called. Qt should clean up any thing it had made a copy of at this point.
Has anyone else seen this pattern? Is there anyway to force Qt to clean up after itself?
You can see this yourself if you simply make a quick connection of type queued. And send a specified number of signals to a generic slot. You can watch mem growth as each is sent. If you use a type of direct connection then the mem does not grow. This pattern will continue till you stop sending messages and the memory will never be reclaimed.
Thanks,
Chuck
Bookmarks