You can disconnect signals from the model in the view and call update() on the view periodically although it won't work very well if rows are added or removed in the model. It's better to provide a proxy model for the original model that will emit signals only at desired intervals of time - you just need to cache the changes from the original model in the proxy so that you can emit the proper signals.